CodeGym/Blog Java/Random-ES/Lista de verificación de un desarrollador de Java. Lo que...
John Squirrels
Nivel 41
San Francisco

Lista de verificación de un desarrollador de Java. Lo que un desarrollador debe saber

Publicado en el grupo Random-ES
¡Hola! Hoy hablaremos sobre el camino de crecimiento de un desarrollador de Java y lo que debe saber para tener demanda. Lista de verificación de un desarrollador de Java.  Lo que un desarrollador debe saber - 1En una entrevista, cualquier desarrollador podría interrogar al candidato para el puesto. Por ejemplo, pueden comenzar a hacer preguntas sobre temas específicos que han encontrado en su proyecto actual. Pero no saberlo todo es normal. El hecho de que no puedas responder algunas preguntas también es normal. Como regla general, todo programador de Java debe tener una comprensión básica del desarrollo de software. Así que echemos un vistazo a lo que se considera "básico".

1. Algoritmos básicos

Lo primero que debe abordar al comenzar a aprender programación (no solo Java) es comprender los conceptos básicos. Por ejemplo, algoritmos. Hay infinidad de ellos, y no deberías matar años enteros de tu vida tratando de aprender tantos algoritmos como sea posible: la mayoría de ellos no te serán útiles. Puede obtener el mínimo necesario de conocimiento del libro "Algoritmos de Grokking". Esto es suficiente para empezar, pero si quieres, puedes aprender del libro "Structures and Algorithms" o "Algorithms in Java" de Robert Sedgewick y Kevin Wayne. También le recomiendo que mejore su conocimiento de los conceptos básicos de informática. Esto se puede hacer con el curso Harvard CS50.

2. Sintaxis Java

Después de aprender los conceptos básicos de los algoritmos, debemos aprender la sintaxis de Java. Después de todo, todos estamos estudiando para convertirnos en programadores de Java, ¿verdad? El curso CodeGym es perfecto para esto. A medida que realice innumerables tareas, tendrá en sus manos la sintaxis de Java y luego, sin dudarlo mucho, escribirá/leerá código Java como si fuera su idioma nativo. CodeGym es práctica, pero más allá de eso, también debes mirar la teoría para comprender lo que estás haciendo. Para hacer esto, puedes leer libros. Por ejemplo, uno de los siguientes:
  • "Jefe primero Java",
  • "Java para Dummies" de Barry Bird;
  • "Java: una guía para principiantes" de Herbert Schildt.
Después de leer estos libros, puede pasar a libros más difíciles:
  • "Pensando en Java", Bruce Eckel;
  • "Java efectivo" de Joshua Bloch;
  • "Java: la referencia completa" de Herbert Schildt.
Los últimos tres libros no son de lectura fácil para los principiantes, pero proporcionan una base sólida en la teoría de Java. Además, no se olvide de los artículos de CodeGym, ya que brindan explicaciones sobre la mayoría de los temas que pueden interesarle. Puede encontrar un artículo relevante escribiendo el tema que le interesa en la barra de búsqueda: Lista de verificación de un desarrollador de Java.  Lo que un desarrollador debe saber - 2también recomiendo buscar preguntas de entrevistas de Java. Esto le ayudará a comprender qué es exactamente lo que necesita aprender y para qué preguntas debe prepararse.

3. Patrones de diseño

Los patrones de diseño son ciertos patrones repetibles que resuelven problemas en contextos frecuentes. Incluyen patrones básicos y sencillos que todo programador que se precie debería conocer. Para comprender este tema, tome el libro "Head First Design Patterns". Explica los patrones básicos de diseño de una manera accesible. Pero el libro habla mucho sobre Java, así que cuando consumas este libro también necesitarás fluidez en este lenguaje de programación. Para una inmersión más profunda en los patrones, también puede leer "Patrones de diseño: elementos de software orientado a objetos reutilizables" de Gang of Four (Nota del editor: Gang of Four es un equipo de autores que incluye a Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides.). Una vez que haya estudiado este tema, comenzará a ver patrones prácticamente en todas partes de su código. Preste atención a esto, especialmente a los patrones usados ​​en Spring, ya que esta es una pregunta de entrevista popular.

4. Paradigmas de programación. Limpieza del código

Además de los patrones de diseño estándar, hay varios principios y paradigmas a tener en cuenta ( SÓLIDO , GRASP ). También necesita mantener su código limpio y legible. Para todo lo que necesita saber sobre este tema, consulte Código limpio de Robert Martin o consulte "Código completo" de Steve McConnell.

5. Sql

Nuestro siguiente paso es estudiar un lenguaje para bases de datos relacionales: SQL . Las bases de datos son donde se almacena la información (datos) que utiliza una aplicación web. Una base de datos consta de varias tablas (la libreta de direcciones de su teléfono es un ejemplo sencillo). Los desarrolladores de Java son responsables no solo de la aplicación Java, sino también de la base de datos con la que interactúa y donde almacena sus datos. En las bases de datos relacionales (que son el tipo más común), toda interacción ocurre a través de un lenguaje especial llamado Lenguaje de consulta estructurado o SQL. Para entender este tema, todo lo que necesita hacer es leer uno de estos libros:
  • "Aprender SQL" de Alan Beaulieu;
  • "SQL" por Chris Fehily;
  • "Head First SQL" por Lynn Beighley.
Pero la práctica sin teoría no es suficiente, ¿verdad? Y en las entrevistas puede esperar una prueba de su conocimiento de SQL. Los entrevistadores a menudo (casi siempre) asignan una o dos tareas que implican escribir una consulta SQL. Como resultado, es muy importante perfeccionar sus habilidades prácticas de SQL para mostrarse bien.

6. MySQL/PostgreSQL

Después de aprender el lenguaje SQL, debe familiarizarse con una implementación de base de datos específica. Dependiendo de la base de datos, algunos comandos pueden variar drásticamente. Y hay diferencias bastante notables en las capacidades de la base de datos. Las bases de datos relacionales más comunes son MySQL y PostgreSQL . Lista de verificación de un desarrollador de Java.  Lo que un desarrollador debe saber - 3MySQL es mucho más simple, pero PostgreSQL tiene capacidades mucho más amplias. Estar familiarizado con al menos uno de ellos es suficiente para comenzar. Puede estudiar implementaciones de bases de datos si usa sus habilidades de búsqueda en Google: encuentre artículos y tutoriales relevantes en YouTube. Deberá cultivar su capacidad para elaborar consultas de búsqueda adecuadas para las preguntas que necesita responder. Después de todo, un programador es alguien con cinturón negro en Google.

7. Experto/Gradle

Debe aprender el marco Gradle o Maven . Son para construir proyectos, y para ti, Java ahora no es solo para tareas que involucran un par de clases, sino también un lenguaje para escribir aplicaciones completas. Debe comprender cómo compilar un proyecto, cuáles son las etapas de compilación, cómo cargar las bibliotecas externas necesarias con código de terceros y mucho más. A pesar de que Gradle es más nuevo y más conciso, Maven se usa en la mayoría de los casos. Por lo tanto, preste especial atención al ciclo de vida de compilación de Maven.

8. Git

Git es un sistema de control de versiones distribuido. Esta tecnología permite a los desarrolladores colaborar en una sola aplicación sin interferir entre sí. Por supuesto, existen otros sistemas de control de versiones. Por ejemplo, Subversión . Pero Git se usa más ampliamente y debe poder trabajar con él.Lista de verificación de un desarrollador de Java.  Lo que un desarrollador debe saber - 4Además de los muchos artículos sobre Git que puede encontrar en línea, YouTube tiene videos más que suficientes para ayudarlo a dominar esta tecnología, paso a paso. Al principio, es mejor usar Git desde la línea de comandos en lugar de algún tipo de implementación de GUI, porque se verá obligado a hacer todo usando comandos. En las entrevistas, a la gente le gusta preguntar acerca de algunos comandos de Git, por lo que le recomiendo que los escriba y los guarde en un lugar cercano. También te recomiendo que tomes notas, haciendo un seguimiento de los puntos más importantes para repasarlos antes de la entrevista y refrescar tu memoria.

9. JDBC

Esta tecnología conecta su aplicación Java y una base de datos relacional. Para lo básico, recomiendo leer cualquier tutorial de JDBC. Hay una gran cantidad de artículos que explican JDBC y brindan ejemplos rudimentarios, aunque ya nadie usa JDBC desnudo directamente.

10. JPA. Hibernar

JPA es una forma de establecer una conexión entre una aplicación Java y una base de datos, al igual que JDBC. Pero al mismo tiempo, JPA es una tecnología de nivel superior y, por lo tanto, más fácil de usar. Pero JPA es solo una especificación, no una implementación. Necesita una implementación concreta. Muchos de ellos existen, pero el más cercano a los ideales de JPA, el más popular y el más desarrollado es Hibernate. Te encontrarás con esta tecnología más de una vez en tu carrera de desarrollo de software. Entonces, además de familiarizarse con esta tecnología leyendo artículos, puede valer la pena pensar en leer un libro, por ejemplo, "API de persistencia de Java".

11. Primavera

Cuando te conviertes en desarrollador de Java, Spring ya no es solo una palabra para ti. Lista de verificación de un desarrollador de Java.  Lo que un desarrollador debe saber - 5Conocer este marco es ahora tan importante como conocer la sintaxis de Java. Se podría decir que Spring tiene un hermano, es decir, Java EE. Pero Java EE está desactualizado y ya no se usa en nuevos proyectos. La gran mayoría de los desarrolladores de Java ahora son desarrolladores de Java-Spring, por lo que es imprescindible conocer algunas tecnologías básicas de Spring. Spring no es solo un marco, sino un marco completo de marcos: Lista de verificación de un desarrollador de Java.  Lo que un desarrollador debe saber - 6y esto es solo un subconjunto de los marcos que proporciona Spring. Para un principiante, conocer solo algunos de ellos es suficiente:

  • Núcleo de resorte

Debería poner esto en primer lugar, para que pueda entender qué es Spring: todo sobre contenedores Spring, beans, DI, IoC, etc. Para entender la filosofía misma de usar Spring, por así decirlo. Su estudio adicional de los marcos Spring se basará en esta base. Tal vez debería crear su propia pequeña aplicación en la que pueda incorporar gradualmente todas las tecnologías recién aprendidas.

  • Primavera JDBC

Anteriormente mencionamos JDBC como una tecnología para crear una conexión de base de datos. En general, el uso "desnudo" de la tecnología ya no se puede encontrar en los proyectos, por lo que puede concluir que no es necesario aprender JDBC. Esta no es la actitud correcta. Al explorar el uso simple (directo) de JDBC, puede ver la tecnología en un nivel más bajo y comprender sus problemas y deficiencias. Luego, cuando comience a aprender Spring JDBC, se dará cuenta de qué es exactamente lo que mejora, optimiza y oculta este marco.

  • Hibernación de primavera

De manera análoga a la situación con JDBC desnudo, este marco aprovecha una tecnología existente, en este caso, Hibernate. Si considera usar Hibernate sin Spring, definitivamente se dará cuenta de los beneficios que ofrece Spring Hibernate.

  • Primavera JPA

Anteriormente hablamos sobre JPA y mencionamos que es solo una especificación, aunque tiene varias implementaciones. Entre estas implementaciones, Hibernate se acerca más al ideal. Spring tiene su propia implementación ideal de JPA que usa Hibernate bajo el capó. Es lo más cercano posible al ideal de la especificación JPA. Se llama Primavera JPA. En una palabra, simplifica enormemente el acceso a la base de datos. Solo puede aprender JPA sin aprender JDBC, Hibernate, Spring JDBC o Spring Hibernate. Pero si adopta este enfoque, su conocimiento sobre cómo conectarse a una base de datos será muy superficial.

  • Primavera MVC

Esta tecnología hace posible mostrar la interfaz web de nuestra aplicación a los usuarios y facilitar la comunicación entre la interfaz y el resto de la aplicación. La tecnología también se puede usar sin pantalla cuando tiene una aplicación que es responsable de manejar la pantalla y está interactuando con la aplicación usando tecnología RESTful . Para absorber mejor la información sobre Spring, además de artículos y conferencias de YouTube, puede leer varios libros. Me gustó mucho el libro "Primavera en acción" de Craig Walls. Te aconsejo que leas la sexta versión, si sabes bien inglés. Otro gran libro sobre Spring es "Spring 5 for the Professionals". Es más denso. Más como una referencia que es más valiosa para tener a mano que para leer de cabo a rabo.Lista de verificación de un desarrollador de Java.  Lo que un desarrollador debe saber - 7

  • Bota de primavera

Esta tecnología simplifica enormemente el uso de Spring. No lo puse al final de la lista por capricho. De hecho, esconde mucho debajo del capó, y para alguien que no esté familiarizado con el Spring vainilla, muchos puntos pueden ser confusos o incomprensibles. Primero, para una mejor comprensión de cómo funcionan los marcos Spring, debe usar Spring normal y luego obtener todos los beneficios superiores de usar Spring Boot. También le recomiendo que se familiarice con Spring Security y Spring AOP. Pero a diferencia de las tecnologías anteriores, todavía no se necesita un conocimiento profundo de estas dos. Esta tecnología no es para principiantes. En las entrevistas, a los desarrolladores junior no se les preguntará sobre ellos (excepto una pregunta superficial, tal vez). Lea una descripción general de qué son estas tecnologías y los principios detrás de su trabajo. En este articulo, He mencionado repetidamente leer libros. Por un lado, esto no es obligatorio. Puede convertirse en programador sin leer un solo libro, obteniendo todos los conocimientos necesarios de artículos en línea y videos de capacitación. Por otro lado, en el mercado laboral, la competencia entre los desarrolladores novatos es alta en la actualidad, lo que eleva el nivel de lo que un principiante necesita saber. Entonces, cuanto más sepa, más rápido encontrará su primer trabajo al impresionar al entrevistador con su nivel de conocimiento. Gracias a todos, y que Java esté con ustedes. lo que eleva el nivel de lo que un principiante necesita saber. Entonces, cuanto más sepa, más rápido encontrará su primer trabajo al impresionar al entrevistador con su nivel de conocimiento. Gracias a todos, y que Java esté con ustedes. lo que eleva el nivel de lo que un principiante necesita saber. Entonces, cuanto más sepa, más rápido encontrará su primer trabajo al impresionar al entrevistador con su nivel de conocimiento. Gracias a todos, y que Java esté con ustedes.
Comentarios
  • Populares
  • Nuevas
  • Antiguas
Debes iniciar sesión para dejar un comentario
Esta página aún no tiene comentarios