JavaRush /Blog Java /Random-ES /Pausa para el café #42. Qué hacer si no sabes algo. Las 5...

Pausa para el café #42. Qué hacer si no sabes algo. Las 5 mejores bibliotecas de Java para una máxima productividad

Publicado en el grupo Random-ES

Qué hacer si no sabes algo

Fuente: Dev.to Si eres desarrollador, tarde o temprano probablemente te haya surgido una situación en la que no sabes cómo solucionar un problema. Este es un momento bastante desagradable en cualquier etapa de su carrera. Después de todo, todavía tienes que completar la tarea, a pesar de que no sabes algo. En este artículo compartiré mi experiencia personal y les diré qué les ayudará a encontrar una solución a tal problema.Pausa para el café #42.  Qué hacer si no sabes algo.  Las 5 mejores bibliotecas de Java para un rendimiento máximo - 1

Hacer preguntas

Cuando era principiante tenía miedo de hacer preguntas, hasta el último momento intenté resolver todo por mi cuenta. Pasaba enormes cantidades de tiempo resolviendo un problema y permanecía en silencio hasta que finalmente tenía que hablar con mi jefe o mis clientes. Entendí por qué hice lo que hice. Evité hacer preguntas porque no quería parecer estúpido delante de los demás. Me pareció que todos los demás, excepto yo, captaron rápidamente la esencia y entendieron de qué se trataba. Fue sólo gracias a mis compañeros que finalmente comencé a dejar mi orgullo a un lado y a preguntar sobre lo que no entendía.

Google y YouTube son tus mejores amigos

Una vez vi un vídeo de cómo Google respondía preguntas absurdas o divertidas. Aunque las respuestas también fueron muy divertidas, me di cuenta de que Google definitivamente puede ayudar si surge alguna pregunta. Por tanto, si te encuentras en un callejón sin salida, no olvides buscar la respuesta a través de este buscador. YouTube también me ayuda mucho a resolver problemas. Especialmente en los casos en los que se necesita una comprensión más profunda del tema. Entonces siempre estoy buscando videos de actualidad.

Un par de ojos extra no vendría mal

No dejes que la ira y la frustración te consuman si no puedes resolver un problema. Un claro ejemplo de esta situación serían los casos en los que se necesita mantener una base de código desactualizada, donde por falta de documentación hay que hacer ingeniería inversa. Por supuesto, esto requiere mucho esfuerzo. Tendrás que profundizar en la base del código, comprender el estilo de los desarrolladores anteriores. En tales casos, es muy recomendable que otra persona además de usted revise el código. La otra persona puede señalar cosas que usted pasó por alto o que no entendió. De esta forma podrás acelerar la solución del problema.

No te castigues si te quedas atascado en algo.

Quiero llamar especialmente la atención sobre esto. No te enojes contigo mismo si te quedas atrapado en alguna parte. Sí, cuando no puedes resolver un problema, no es muy agradable. El síndrome del impostor puede empeorar, es posible que te sientas inútil y pierdas la confianza en que eres un buen desarrollador. Estoy seguro de que si una persona nunca se ha quedado estancada en algo en su trabajo es sólo porque actúa en su zona de confort, sin ir más allá de sus acciones habituales. Para estar preparado para situaciones inesperadas, comuníquese con personas que puedan impulsarlo a elevar sus estándares profesionales. No se enoje si encuentra algo para lo que no estaba preparado. Estos casos ayudan a identificar lagunas de conocimiento y, en consecuencia, a llenarlas.

Tomar descansos

Puede que no parezca muy productivo, pero cuando estás trabajando en algo grande y complejo, tomar descansos breves es de gran ayuda para aliviar el estrés. Camine durante 15 minutos, hable con alguien, haga ejercicio o incluso tome una siesta. El descanso ayuda a refrescar la mente y, además, durante todo este tiempo el cerebro sigue funcionando y, en algún lugar del nivel subconsciente, resuelve la tarea que nos ocupa. Como resultado, es posible que tengas un momento eureka mientras simplemente bebes tu café.

Conclusión

Lo primero que debes hacer al resolver un problema es hacer una lista de lo que sabes y lo que no sabes. Después de esto, deberás hacer preguntas aclaratorias a la persona que te asignó esta tarea. Quizás en esta etapa algo quede más claro y usted pueda eliminar algunas de las preguntas de la categoría "No sé". Deberías buscar respuestas a otras preguntas tú mismo en Google o YouTube. Date algo de tiempo para buscar. Si no pudo solucionar el problema por su cuenta, no dude en pedir ayuda a sus compañeros.

Las 5 mejores bibliotecas de Java para una máxima productividad

Fuente: Medio Probablemente alguna vez hayas escrito código en Java y hayas pensado: "Debe haber una manera mejor...". Las bibliotecas de Java pueden ayudar a resolver estos problemas. Les traigo a su atención cinco de las mejores bibliotecas, en mi opinión, cuyo uso aumentará su productividad y eficiencia en el trabajo.Pausa para el café #42.  Qué hacer si no sabes algo.  Las 5 mejores bibliotecas de Java para un rendimiento máximo - 2

1. Lombok

Project Lombok es una biblioteca de Java que utiliza anotaciones para reducir el código repetitivo. Puede utilizar anotaciones como @Getter para generar automáticamente métodos getField() . A continuación se muestran algunas anotaciones admitidas:
  • @Getter y @Setter, que generan captadores y definidores;
  • @EqualsAndHashCode genera automáticamente métodos Equals y HashCode que se ajustan a los contratos Equals y HashCode ;
  • @ToString genera un método toString() que sigue el formato ClassName(fieldName = valor, fieldName2 = valor...) ;
  • @Builder implementa automáticamente el patrón de creación para facilitar la creación de su POJO;
  • @Data es la abreviatura de @Getter, @Setter, @EqualsAndHashCode, @ToString y @RequiredArgsConstructor.
Hay muchas más anotaciones compatibles y fácilmente personalizables. Trabajar con ellos le evitará escribir código repetitivo.

2. guayaba

Guava es una biblioteca de Java creada y mantenida por Google. Contiene muchas utilidades que se utilizan ampliamente al trabajar con código. Estas son sólo algunas de las características de Guava:
  • Extensiones de colecciones, como Multimap<k, v="">, donde Map admite múltiples valores para una clave determinada, lo que equivale a Map <k, collection="" <v="">> con una API más limpia. ;</k, >>k,>
  • el paquete Graphs, que incluye una serie de utilidades para modelar datos gráficos;
  • utilidades de concurrencia como MoreExecutors, Atomics y ListenableFuture.
Hay mucho que encontrar en la biblioteca de Guava. El soporte de Google lo hace bastante popular, por lo que puede estar seguro de que sus API se prueban y admiten exhaustivamente. Si necesitas resolver algún problema común de Java, ¡seguramente encontrarás una solución con Guava!

3. Hibernar

Hibernate es una biblioteca de mapeo relacional de objetos que le permite interactuar con una base de datos sin tener que preocuparse por la traducción entre tablas SQL y POJO. El sitio web de Hibernate proporciona la siguiente información sobre la biblioteca: “Con Hibernate, puede crear clases de larga duración de acuerdo con principios naturales orientados a objetos, incluida la herencia, el polimorfismo, la asociación, la composición y las colecciones de Java. Hibernate no requiere interfaces ni clases base para clases de larga duración y permite que cualquier clase o estructura de datos sea persistente”. Utilice Hibernate para mejorar el almacenamiento de datos persistente y eliminar miles de líneas de código de base de datos.

4. fingir

OpenFeign es una biblioteca de Netflix que facilita la creación de clientes HTTP RESTful en Java. Para crear un cliente Feign, simplemente describe la interfaz con detalles de solicitud y respuesta. Esto se ilustra mejor con un ejemplo:
@FeignClient(url = "https://github.com")
interface GitHubClient {
    @RequestLine("GET /users/{username}/repos?sort=full_name")
    List<repository> repos(@Param("username") String owner);

    @RequestLine("GET /repos/{owner}/{repo}/contributors")
    List<contributor> contributors(@Param("owner") String owner, @Param("repo") String repo);

    @RequestLine("POST /repos/{owner}/{repo}/issues")
    void createIssue(Issue issue, @Param("owner") String owner, @Param("repo") String repo);
}
</contributor></repository>
La interfaz GitHubClient mencionada anteriormente realizará las solicitudes GET y POST descritas en los métodos. Este cliente utilizará de forma predeterminada el formato JSON para todas las solicitudes. Hay muchas configuraciones para el cliente Feign:
  • codificadores y decodificadores para seleccionar cómo se serializan y deserializan los POJO a través de la red;
  • Reintentores para especificar reglas y lógica de reintento;
  • RequestInterceptors para otras tareas previas a la solicitud, como recibir cookies o autorización.
¡Usando Feign, puedes eliminar la necesidad de escribir clientes HTTP manualmente! Nota: Si está utilizando Spring, debe utilizar Spring Cloud OpenFeign , cuya integración con Spring es mejor que OpenFeign por sí solo.

5. Bota de primavera

Por último, pero no menos importante, la biblioteca es Spring Boot . Spring Boot simplifica el proceso de creación de aplicaciones Java listas para producción. Eso permite:
  • crear aplicaciones Spring independientes;
  • incrustar directamente Tomcat, Jetty o Undertow (sin la necesidad de implementar archivos WAR);
  • proporcionar dependencias "iniciales" para simplificar la configuración de compilación;
  • configurar automáticamente bibliotecas Spring y de terceros;
  • Proporciona funciones listas para usar, como métricas, controles de estado y configuración externa.
Existe una curva de aprendizaje importante para usar Spring Boot, pero les aseguro que vale la pena. Spring Boot ha reducido el tiempo de desarrollo de todos mis proyectos y continúa brindando beneficios debido a su estabilidad, extensibilidad y legibilidad.

Conclusión

A pesar de que muchos consideran que Java es un lenguaje "antiguo" que carece de algunas de las características de los lenguajes más nuevos, tiene un soporte único en forma de una gran cantidad de bibliotecas y una enorme comunidad de desarrolladores. Por lo tanto, experimentará muchos menos problemas en su trabajo. Con las bibliotecas de Java, puede aumentar su productividad. No reinventes la rueda: ¡concéntrate en las competencias básicas!
Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION