2009-12-10 16 views
13

He estado programando en Python desde hace un tiempo, y me gustaría aprender un lenguaje más "alquilable" como Java o la familia C/C++/C#. Estoy familiarizado con (aunque no necesariamente bueno) con todos ellos. Me inclino por Java porque funciona prácticamente en todas partes, y me gustaría empezar a desarrollar para Android.Aprender Java desde Python background

Viniendo de un lenguaje dinámico, ¿cuál es la mejor forma de aprender Java? ¿O debería aprender un lenguaje basado en C en su lugar?

+0

Creo que Java es un lenguaje basado en C. – tuinstoel

+3

"C/C++/C# family"? C# no pertenece a la misma familia que C o C++. –

+0

Lo siento, ha pasado un tiempo desde que miré C#. Supongo que se parece más a Java que a C. –

Respuesta

0

La mejor forma de aprender es comenzar a programar. Elige un proyecto como Chess o Checkers y comienza a escribir el código. Obtenga un libro como Java How to Program, repase los ejemplos y ejercicios, y sí ... ¡siga escribiendo el código! No permita que sus antecedentes en ningún otro lenguaje de programación contaminen o desvíen su enfoque para aprender el nuevo idioma.

0

No creo que deba usar una forma especial de aprender Java porque conoce Python. Simplemente comience con HelloWorld.java y siga paso a paso. Tus habilidades básicas en programación te ayudarán.

4

Me gustaría tomar un proyecto que ha implementado en Python e intentar convertirlo a Java. Como ya conoce los principios básicos de la programación, probablemente sea más fácil si toma las cosas que sabe hacer y averigua cómo haría el mismo tipo de operaciones en Java (o el nuevo lenguaje que desee aprender).

Al final, la única forma de aprender a escribir código es escribir más código.

6

Java y C# estarán a menos distancia de Python que C o C++ porque Java, C# y Python tienen administración de memoria automática. Un buen libro de Java es Pensando en Java por Bruce Eckel. Comienza en un nivel introductorio, pero también tiene mucha profundidad.

La gran diferencia con el lenguaje que viene de Python es el hecho de que todas las variables están tipadas. La otra cosa difícil con Java tiene que ver con la desconcertante matriz de API de Java que hay. El hecho de que estés interesado en Android es una ventaja aquí. Después de sentirme cómodo con el lenguaje principal, te sugiero que comiences a aprender la API de Android y te centres en convertirte en un experto de Android. Creo que Android será un mercado en crecimiento por un tiempo.

¡Buena suerte!

+0

+1 para "pensar en Java", el mejor libro para aprender Java. – Kartoch

0

1) Depende de lo que haría con un lenguaje "alquilable". Por ejemplo, si estuviera interesado en programar aplicaciones web y aplicaciones distribuidas/cliente/servidor, Java sería una buena opción.

C# es tal vez un poco menos orientado al cliente/servidor, y tal vez más valioso para las pequeñas empresas que no son de TI y para la mayoría de las empresas de software minoristas.

C y C++ siguen siendo excelentes idiomas, pero están más orientados al "sistema", incrustados y "aplicaciones críticas". Y no son aptos para ejecutarse en diferentes teléfonos móviles.

2) La mejor manera de aprender java, según yo, es primera para aprender los conceptos básicos, luego buscar cosas más especializadas como el framework de software J2ME y Android.

0

Supongo que uno podría facilitar su camino en .NET y Java comenzando con IronPython y Jython, respectivamente. Esto no le enseñará la nueva sintaxis del lenguaje, sino que abrirá las bibliotecas respectivas para que pueda explorar lo que está "afuera", aprender herramientas de desarrollo, proceso de compilación, etc. La sintaxis es de lejos la más fácil de cambiar pero los conocimientos y las mejores prácticas en cada idioma no es

2

He aquí una buena pdf que introduce Java para programadores de Python:

http://interactivepython.org/runestone/static/java4python/Java4Python.html

que estoy pasando ahora mismo. El autor compara los fragmentos de código de Python con los equivalentes de Java y explica detalladamente cada línea del fragmento de código Java. Sin embargo, el libro es corto y pasa por alto mucho material. Si bien creo que me ayuda a relacionarme con el nuevo idioma, debe complementarse con libros más completos. Head First Java y Thinking en Java parecen ser muy recomendables. Me moveré sobre ellos después de que termine aquí.

+1

Enlace no es suficiente, su respuesta debe mantenerse incluso cuando el enlace está roto. –

+0

el enlace está roto – WeizhongTu

+2

El documento parece estar vinculado aquí: http://cs.bc.edu/~donaldja/102/Java4Python. pdf – EmeryBerger