2009-05-12 5 views
13

Solía ​​ser un nerd de Java en la universidad, pero desde entonces no lo he tocado. Mi trabajo durante los últimos 3-4 años ha sido principalmente en Python y C++, y he olvidado muchas cosas de Java.¿Cuál es la mejor manera de volver a aprender un idioma?

Entonces, ¿cuál es la mejor (y más rápida) forma de volver al surco con un lenguaje? ¿Alguna sugerencia sobre pequeños proyectos que te hagan usar (y por lo tanto volver a aprender) los idiomas antiguos que ya conoces?

Una pregunta relacionada es, ¿cómo pueden mantenerse en contacto con las tecnologías que han aprendido pero que no han tenido la oportunidad de usar en mucho tiempo?

+0

Buena pregunta. Esto es algo que siempre estoy retocando y considerando cómo hacerlo. –

Respuesta

11

La mejor manera de volver a aprender es la mejor manera de aprenderlo: úselo. Eche un vistazo a las secciones "Novedades" para Java 5 y 6 para ver qué nuevas cosas se han agregado pero no sienta que el necesita para usarlo todo.

La mejor opción, en mi opinión, es usar las cosas con las que estaba familiarizado para "volver al caballo" y luego aprender gradualmente las cosas más nuevas.

Proyectos específicos: No vuelvo a un idioma que no haya utilizado a menos que haya una necesidad real, en cuyo caso ya se especificará el proyecto para el que lo voy a utilizar (personal o de trabajo). Los problemas perennes de Euler a veces son divertidos, pero están limitados en las características del lenguaje que te hacen usar. Una cosa que podrías intentar es portar uno de tus programas Python/C++ que has desarrollado, a Java.

+0

(+1) Iba a sugerir esa última parte. Tome un proyecto con el que esté muy familiarizado y transfiéralo a su nuevo idioma de elección. – DevinB

1

Para mí, la manera más rápida de ponerme en contacto con las tecnologías que no he tenido la oportunidad de utilizar en un momento es involucrarme en un proyecto de código abierto donde la tecnología en cuestión está en uso. Si planeas volver a familiarizarte con Java, te sugiero que veas el proyecto Jython, por ejemplo. De esa forma te sentirás seguro en las partes de pitón, mientras que todavía necesitarás trabajar en Java. La mayoría de los proyectos de código abierto también son bastante buenos para adoptar nuevas tecnologías, y aunque no estoy seguro de que los chicos de jython estén usando la última versión de Java, no dudaría en invertir unos pocos dólares en esa apuesta. Codificar con otros como este también le da la oportunidad de ver el código escrito por otras personas, lo que le facilitará captar los cambios sintácticos (hay algunos introducidos con java 6), las mejores prácticas y demás, que Siempre encuentro muy útil. Además, el apoyo suele ser bueno en este tipo de proyectos, ya que las personas están ansiosas por seguir avanzando.

¡La mejor de las suertes en tu misión de revitalización de Java!

1

Lea libros avanzados sobre el tema. Algunos ejemplos:

Effective Java (2nd Edition) - Joshua Bloch

C# in Depth: What you need to master C# 2 and 3 - Jon Skeet

Estos dos como ejemplos se proporcionan con los cambios introducidos en las últimas versiones de los idiomas que debería ser suficiente para que todo vuelva a la pista combinada con una especie de proyecto de mascotas como lo menciona Pax.

trato de leer algunos libros avanzados en idiomas, que no uso activly en este momento también, pero esto depende de mi motivación ..

Con recuerdos

0

para mí ..

elige un proyecto para ti mismo ... y comienza a codificarlo en ese idioma ... usa internet y muestras ...

2

Si usted mismo es programador, aprender o volver a aprender un idioma es una tarea muy similar. Solo necesita ensuciarse las manos y comenzar a codificar algo con la ayuda de la documentación más reciente.

Si tiene problemas para decidir qué codificar y si está interesado en resolver problemas complejos que requieren cierta planificación y conocimiento, le sugiero que consulte los problemas del concurso de programación de ACM. A menudo son un desafío, así que no dejes que eso te quite la motivación. Hay algunos sitios donde puede probar su código contra el análisis automatizado. http://www.spoj.pl/ es uno de ellos

1

Además de las sugerencias proporcionadas, sugiero que utilice un IDE como eclipse o netbeans. Son gratuitos y ayudarán a escribir, corregir, compilar, ejecutar y depurar su programa.

2

Normalmente programo un servidor web o un rastreador en ese idioma para aprender un idioma. Estos son buenos ejemplos porque le dan una idea de:

  • Bibliotecas de cadenas y expresiones regulares generales.
  • Multi-threading y otras características de concurrencia en un idioma.
  • Compatibilidad con el sistema de red y archivos.
  • Habilidades de plataforma cruzada de un idioma.
  • Una buena cantidad de sintaxis y soporte de herramientas también se puede evaluar con este enfoque.

Sobre todos estos ejemplos solo toma uno o dos días para implementar.

Cuestiones relacionadas