Cómo aprender a codificar en Java: por qué debería y por dónde empezar

Defina sus objetivos profesionales y elija un idioma. Este es el consejo más importante para cualquiera que no tenga experiencia en programación y tenga como objetivo unirse a la comunidad de desarrolladores. Pero, ¿cómo puede tomar una decisión sin tener idea de qué idioma se adapta más a sus propósitos?

¿No sería fácil si hubiera un "líder del mercado" entre todos los lenguajes de programación? Entonces, todos los recién llegados siempre podrían tener una opción segura: aprenda este idioma y seguramente tendrá una gran demanda. Por supuesto, es imposible. Los lenguajes son "herramientas" para resolver numerosas tareas. Pero aún así, hay uno que puede considerarse como una opción estelar: es Java.

Java es un lenguaje bien estructurado y orientado a objetos, que puede considerarse fácil para los principiantes. Puede dominarlo con bastante rapidez, ya que hay muchos procesos que se ejecutan automáticamente. No tienes que ahondar demasiado en "cómo funcionan las cosas allí". Java es un lenguaje multiplataforma. Permite a un programador crear una aplicación que se puede implementar en cualquier dispositivo. Es el idioma elegido para Internet de las cosas y la herramienta adecuada para crear aplicaciones de nivel empresarial.

Lo que es importante para un "novato", Java tiene una de las comunidades globales más grandes y documentación de alta calidad. Si tiene un problema, es más que probable que la respuesta esté lista allí, esperándolo. Dos beneficios más de Java son las vastas colecciones y marcos que cubren la mayoría de los desafíos a los que tendrá que enfrentarse como desarrollador junior.

Por último, es una lengua con una trayectoria respetable y un futuro destacado. Dos últimas versiones, mejoradas con nuevas funciones, se lanzaron con seis meses de diferencia. Esto ayuda a Java a ocupar un lugar destacado y mantener las posiciones más altas en rankings profesionales respetables.

Pero incluso cuando hablamos de un lenguaje de programación con una curva de aprendizaje baja, hay muchas rocas ocultas para principiantes. ¿Cuánto tiempo necesitas para aprender? ¿En qué fuentes confiar? ¿Qué errores evitar? Repasemos completamente su experiencia de aprendizaje.

Asegúrese de sortear los obstáculos comunes

Entonces, eres nuevo en la programación. Enhorabuena: ya que puedes hacer uso de la experiencia de otros programadores y evitar los errores habituales en una autoeducación. A continuación, se muestran algunos errores frecuentes.

Aprender sin fijar un objetivo específico

Para estimar la escala y el nivel de conocimiento deseado en un determinado lenguaje de programación, en primer lugar, debe responder una pregunta simple: ¿por qué necesita programación?

Si se toma en serio la codificación y tiene la intención de convertirse en desarrollador de Java, deberá estudiar todos los días durante al menos 4 a 5 horas. Pero si simplemente desea ampliar su alcance, puede elegir un tempo más relajado. De todos modos, trate de no extender su educación por muchos años, porque las tecnologías evolucionan. Mientras aprende un determinado marco o herramienta de desarrollo para conseguir un trabajo, se vuelve obsoleto.

Leer "cualquier cosa útil" que aparezca no es la mejor estrategia de aprendizaje. Está bien hacer ajustes al plan general. Sin embargo, no seguirlo en absoluto lo desmotivará inevitablemente.

Un intento de aprender demasiadas tecnologías a la vez

Este es un error posterior, que conduce a un aprendizaje sin fin. No intente llenar su plan educativo con demasiadas tecnologías y herramientas para evitar el agotamiento. Necesitará tiempo para procesar la información y ver cómo funciona todo en la práctica.

Demasiada investigación y teoría sin práctica

La programación es una habilidad que solo puede adquirir con mucha práctica. Necesitará una formación seria en teoría, pero mientras solo lea (o vea) conferencias y cursos, realmente no puede codificar. Piénsalo. Nadie puede aprender a nadar sin intentarlo. Necesitas explicaciones, pero sobre todo, necesitas acción.

Solo mucha práctica le enseñará cómo lidiar con los problemas cotidianos de los programadores. Por ejemplo, adquirirá el hábito de verificar su código con regularidad y no dejar que los problemas conectados se acumulen. También comenzará con las soluciones más fáciles. Luego pasa a lo más exquisito, trabajando constantemente en la mejora de tu código. Y lo más importante, te acostumbrarás a la codificación a diario.

Aprender a codificar de forma aislada

Los principiantes a menudo dudan si deben unirse a comunidades de programación en línea o asistir a eventos, principalmente debido al síndrome del impostor. Pero recuerda: nadie quiere derribarte. La comunidad de programación es colaborativa. Así aparecen numerosas fuentes de datos abiertas. Están acostumbrados a trabajar en equipo, y seguro que todos fueron principiantes en algún momento de la vida.

Eche un vistazo: hay muchos foros y fuentes web sobre programación. Los desarrolladores comparten con entusiasmo sus conocimientos y están abiertos a colaboraciones. Puede comenzar a aprender en línea, obtener una pista útil de colegas más experimentados y, más tarde, encontrar su primer proyecto de codificación.

Estar seguro de que algún día comprenderá completamente todos los aspectos de la programación

Si alguien descubriera una pastilla para tomar e inmediatamente se volviera experto en cualquier lenguaje de programación, sería la persona más rica del planeta (lo siento, Jeff Bezos). Pero hasta entonces, su educación no tiene un final seguro, si ha elegido ser programador. Incluso cuando tengas un trabajo, nunca dejes de aprender. Las cosas cambian rápidamente en el mundo de la programación.

Por otro lado, cuando todavía esté aprendiendo a codificar, intente aceptar algunos hechos tal como son. No profundice en todos los temas, ya que su fondo puede ser demasiado "pesado".

Haz un programa de entrenamiento perfecto

Es más fácil lograr su objetivo paso a paso. Ahora, cuando conozca los errores comunes, podrá evitarlos. Aquí hay cinco pasos que puede seguir para aprender Java.

  1. Fíjese una meta y elija un idioma.

Puedes hacer prácticamente cualquier cosa con Java. Puede crear servidores de aplicaciones, aplicaciones móviles y de escritorio, aplicaciones empresariales y ejecutar pruebas unitarias. Pero, por supuesto, un lenguaje de programación no es todo lo que necesita saber para convertirse en un profesional. Trate de pensar en áreas de actividad específicas.

Las tendencias actuales son la creación de aplicaciones basadas en la nube (también deberá aprender los conceptos básicos de la computación en la nube y las herramientas específicas para el desarrollo en la nube), trabajar con Internet de las cosas, realizar análisis de Big Data, crear juegos, etc.

2. Crea un plan educativo.

¿Estás listo para hacer de la programación Java tu profesión? Luego, dedique al menos 2-3 (los días laborales) a 5 horas (los fines de semana) para estudiar diariamente. En este caso, es probable que necesite de 3 a 6 meses para prepararse para un puesto de desarrollador junior.

En general, su proceso de aprendizaje se dividirá en algunas etapas:

  • Instalación de JDK (Java Development Kit) desde el sitio web de Oracle e Instalación del entorno de ejecución Java (IntelliJ IDEA, Eclipse o NetBeans);
  • Aprendizaje de la sintaxis de Java;
  • Aprendizaje de Java Core;
  • Aprendizaje de las colecciones de Java;
  • Aprendizaje de bibliotecas y marcos populares;
  • Explorar las API de uso frecuente (por ejemplo, servlets, JSP, JDBC, JUnit);
  • Dominar Git;
  • Y así.

Trate de seguir su plan y mantenga el equilibrio entre la teoría y la práctica. La programación es una habilidad que necesita entrenamiento todos los días. Si terminas de estudiar una determinada materia, continúa con algunas tareas de codificación (de 3 a 10, según su dificultad).

Puede ajustar fácilmente el conocido principio de Pareto (regla 80/20) al aprendizaje de Java. El "20" representará la investigación y el "80" la práctica. Esto no es una exageración: necesitará cuatro veces más codificación que lectura para memorizar lo que ha aprendido y desarrollar sus habilidades de codificación. Desafortunadamente, si no escribe su código de una vez, olvidará todo lo que haya leído al día siguiente. Afortunadamente, no es necesario que invente su propio programa de formación, si dispone de las fuentes adecuadas.

3. Elija las herramientas adecuadas y únase a las comunidades de programación.

Seamos honestos: no existe un curso perfecto de Java. Algunos le darán un conocimiento básico profundo, otros le proporcionarán una buena cantidad de práctica. Elija algunas plataformas para la educación, la comunicación y la práctica. Elija un curso en línea que combine una explicación simple de la teoría con la codificación real.

Únase a las comunidades, donde puede hacer cualquier pregunta sobre los aspectos de la codificación en Java, compartir sus pensamientos y encontrar personas con ideas afines. Las principales comunidades para desarrolladores de Java se enumeran a continuación.

Utilice múltiples fuentes para aprender Java

Necesitará muchas herramientas para lograr sus objetivos. Aquí tienes un conjunto de "herramientas" para que tengas éxito.

  1. Práctica estricta: CodeAcademy

Esta es probablemente una de las plataformas en línea más conocidas para aprender numerosos idiomas. Por supuesto, también hay una sección para estudiantes de Java. Aquí comienza a codificar desde la primera lección. Hay sugerencias bastante útiles, que puede obtener si una determinada tarea parece ser difícil (lo cual es normal cuando es un principiante). La lógica es simple: lea la tarea, escriba el código y ejecútelo para ver qué sucede como resultado, y luego pase al siguiente paso. Las tareas se vuelven gradualmente más complicadas, hasta que comienzas a escribir tu código desde una hoja limpia. La sección de preguntas frecuentes es bastante útil y tiene la opción de discutir cada tarea con otros estudiantes.

Este curso puede ser una gran herramienta complementaria para aprender Java. Como se dijo antes, necesita codificar para dominar la programación Java.

2. Juega y codifica desde el principio: CodeGym.cc

Estos son cursos en línea para estudiantes de Java con una característica especial: gamificación. Hoy en día es común que los cursos en línea adopten elementos gamificados, ya que aportan motivación instantánea, una sensación de logros constantes y facilitan la consecución de su objetivo.

En CodeGym, comienzas desde el nivel 0 en el universo futurista con viajes espaciales, robots y otras cosas interesantes. Tu objetivo es superar cuatro misiones educativas para subir de nivel a un personaje: un robot. Cada misión incluye 10 niveles, y cada nivel tiene hasta 10-12 lecciones, impartidas por miembros de la tripulación de una nave galáctica. Una lección consta de una teoría mínima y un conjunto de tareas con verificación instantánea y consejos sobre cómo mejorar su código. Comienzas a codificar desde el principio, resolviendo tareas muy simples, hasta que estés listo para proyectos de codificación mucho más complicados y masivos.

Toda la historia te permite no quedarte atascado en un tema o tarea determinada, avanzar y volver más tarde a los “tornados”. En total, hay más de 1200 tareas impresionantes en un curso. Una cantidad que se convierte en al menos 300 a 500 horas de codificación.

3. Programadores de desafíos: Codewars

Esta es otra plataforma en línea con mucha práctica. Aunque es más adecuado para estudiantes con al menos una pequeña experiencia en programación. Codewars te permite perfeccionar tus habilidades en un determinado idioma al entrenar katas.

Puede escribir su código en un navegador y usar casos de prueba para verificarlo paso a paso. También puede comparar su solución con otras para ampliar su conocimiento y discutir las mejores prácticas. Cada kata tiene un rango y cada kata es un desafío con otros programadores. Cuando resuelve tareas más difíciles, puede obtener desafíos más complicados para mejorar las habilidades de codificación. Lo que diferencia a esta plataforma de otras es que permite estudiar y practicar en grupo.

4. Escuche las conferencias de un nivel "profesional": EdX

EdX es una plataforma educativa fundada por la Universidad de Harvard y el MIT. Cubre muchos campos de estudio, incluida la programación Java y muchos temas relacionados. Hay muchos cursos introductorios verificados y programas de certificación proporcionados por universidades.

Cada curso tiene un marco de tiempo definido e incluye conferencias en video con una transcripción de texto. Es fácil volver a lecciones anteriores y revisar el material. Hay decenas de cursos diferentes, algunos de ellos gratuitos. Pero aún así, esta es una fuente estrictamente para aprender la teoría de Java. Asegúrese de fortalecer esos cursos con horas de codificación.

¿Quieres estar atento a las últimas noticias, reseñas y actualizaciones del mundo Java? Eso es lo correcto. Java está en constante evolución, actualizándose y aportando nuevas funciones. Asegúrese de tener un par de medios que pueda leer a diario. Uno de los más grandes son:

  • Javaworld (noticias, tutoriales útiles, "cómo hacer" y todo lo demás para mantenerte al día con la programación Java);
  • Java Code Geeks (un centro de recursos para quienes aprenden Java con tutoriales educativos, artículos y consejos sobre cómo conseguir un trabajo como programador de Java);
  • DZone (muchos artículos y guías para principiantes y desarrolladores experimentados);
  • Javarevisited (un blog actualizado diariamente que cubre numerosos temas de aprendizaje de Java).

¿Recuerda el consejo de unirse a una comunidad para que su educación sea más efectiva? Puede hacer cualquier pregunta en la sección Java de Stack Overflow o en Coderanch. Además, hay al menos tres grandes comunidades en Reddit, comolearnprogramming, java y learnjava, donde encontrará consejos útiles sobre el aprendizaje de Java y la programación en general. Si necesita información más específica, por ejemplo, una pista sobre cómo mejorar su código en determinadas tareas, pruebe la sección de ayuda especial en CodeGym, donde otros estudiantes y “coaches de codificación” le ayudarán con cualquier problema. Y finalmente, Oracle tiene una vasta comunidad Java, abierta tanto para los nuevos como para los desarrolladores experimentados.

Ser programador significa mejorar constantemente y adquirir nuevos conocimientos. Si desarrolla un don para la autoeducación desde el principio, tendrá éxito por todos los medios. ¿Estás listo para probar?