2010-03-31 28 views
5

Una vez que aprendes un idioma, es más fácil aprender un segundo y ¿hay pares de idiomas que vayan juntos? ¿Es incluso una buena idea aprender más de un idioma?Aprender varios idiomas

Respuesta

19

aprender más de un idioma es una excelente idea - no sólo hace que le dará mucho más flexibilidad en la búsqueda de empleo & c, pero simplemente amplía su mente, su visión de lo que es la programación todo sobre.

El segundo idioma suele ser el más difícil, ya que su primer idioma ha contribuido mucho a dar forma a su forma de pensar y operar durante la programación. El caso más difícil es cuando los dos lenguajes son superficialmente similares pero tienen diferencias profundas y sutiles: es realmente difícil percibir, comprender y aprender las diferencias sutiles, ya que la similitud de la superficie te ciega.

Si domina dos idiomas que están muy distanciados entre sí, el tercero será más fácil ... y luego se vuelve más fácil y más fácil. Un gran par de idiomas para empezar es un lenguaje de muy alto nivel (como Ruby o Python) y uno bastante bajo (especialmente C); sin embargo, un lenguaje funcional como Haskell, que es la antítesis de funcionalidades como Java, también debería funcionar, casi igual de bien.

+2

La recomendación de aprender idiomas que son muy diferentes es buena por sí misma. Mucha gente acaba de aprender muchos idiomas muy similares e incluso una vez que han aprendido todas las diferencias sutiles entre ellos, realmente no han aprendido diferentes formas de hacer las cosas. (Por ejemplo, las personas que conocen muchos lenguajes de alto nivel todavía se confunden con las características de bajo nivel, o los programadores orientados a objetos sienten que les cortaron las piernas cuando se ven obligados a escribir código funcional.) – Chuck

+0

También sé [(¿Por qué] debo aprender un nuevo lenguaje de programación?] (Http://programmers.stackexchange.com/questions/136133/why-should-i-learn-a-new-programming-language) – stom

3

Creo que es más importante aprender conceptos en lugar de la sintaxis del lenguaje. Dicho esto, para dominar verdaderamente un idioma, a menudo tienes que tener problemas con sus problemas. Además, algunos idiomas pueden proporcionar soporte de biblioteca que se presta mejor para resolver problemas específicos. Aprender múltiples idiomas es deseable; usted no juega al golf con solo un club, ¿verdad?

2
  1. Sí, una vez que conoces un idioma muy bien es más fácil aprender otros idiomas porque puedes mapear técnicas que conoces con diferentes sintaxis en el otro idioma. Esto supone que ambos lenguajes son comparables: C++ no se comparará limpiamente con Ruby, por ejemplo.
  2. Definitivamente es una buena idea aprender varios idiomas. Cuantos más idiomas aprenda, más amplia será su experiencia. Eventualmente, usted comienza a entender las diferencias en la arquitectura y el diseño base entre los idiomas y por qué algunos tienen ventajas sobre otros para tareas de programación particulares.
1

Sí, sí y sí.

Al aprender un idioma, aprende muchos de los principios básicos de programación, tal como lo expresa ese idioma. Muchos idiomas usan conceptos similares, o incluso los mismos marcos y la estructura básica. Esto puede hacer que aprender un segundo idioma "similar" sea muy fácil. Por ejemplo, si aprende C#, VB.NET es muy fácil, ya que utiliza el mismo marco y los mismos conceptos básicos.

Aprender idiomas diferentes, sin embargo, también puede forzarlo a aprender diferentes maneras de "pensar" sobre un problema. Esto es especialmente cierto si pasa de un lenguaje tipado estático a un lenguaje interpretado o un lenguaje de programación funcional. Te obligarán a reconsiderar tu forma de programar, lo que puede hacerte un mejor programador en general.

3

Es muy útil saber más de un idioma. De hecho, this very good book recomienda aprender uno cada año. Se vuelve más fácil aprender nuevos idiomas, ya que siempre hay conceptos superpuestos en ellos.

1

A medida que aprende más idiomas, tiende a pensar en cosas en términos de conceptos o imágenes en lugar de características específicas de su idioma favorito. Definitivamente es más fácil aprender un tercer o cuarto idioma que el primero o segundo, porque ya comprende muchos de los conceptos (y posiblemente la sintaxis) que se muestran en el nuevo idioma. Es una gran idea aprender más idiomas.

1

Sí, una vez que comprenda cómo separar un problema para que pueda codificar la solución y cuáles son las partes del código común, entonces aprender otro idioma es más fácil. Algunos son más difíciles que otros.

Aprender más lenguajes de programación es bueno de la misma manera que el aprendizaje de múltiples idiomas reales. Aprendes cosas en todos los idiomas, haciéndote mejor en ambos. También tienes otra habilidad para vender. Algunos idiomas son más aplicables a ciertos tipos de problemas ... saber más idiomas lo hace más capaz de abordar esos problemas.

1

La mayoría de las veces sí. Una vez que comprenda la idea general de la programación, comenzará a buscar patrones similares en diferentes idiomas. Especialmente si los idiomas son de la misma familia o son del mismo tipo (por ejemplo, una vez que aprendes C o C++ es muy fácil aprender Java, Javascript, C#, PHP, etc.). Por supuesto, es igualmente difícil dominarlos, pero recogerás el 90% de las cosas rápidamente.

Para aprender, sin embargo, es mucho mejor aprender 2 idiomas de diferentes familias y con diferentes fundaciones, como C y Haskell. Ampliará su perspectiva y le permitirá encontrar soluciones que están fuera del estado de ánimo normal de estos idiomas.

1

Aprender diferentes idiomas le enseña a pensar de diferentes maneras. Estos patrones de pensamiento generalmente se pueden utilizar en cualquier idioma, así que sí, es bueno aprender más de un idioma.

Dicho esto, saber 5 idiomas superficialmente, nunca será tan bueno como saber un idioma hasta el hueso. De nuevo, si ya conoces uno, saber 5 más te permitirá sanear la médula.

Los lenguajes de programación generalmente tienen muy pocas palabras, y la mayoría de las palabras se pueden traducir literalmente hacia y desde diferentes idiomas. Sin embargo, cuando aprendes el primer idioma, junto con el aprendizaje del idioma, debes aprender a pensar en términos de programación. El segundo idioma es mucho más fácil, el tercero igualmente, el cuarto es un paseo por el parque, el último por un pedazo de pastel, y el sexto es un pedazo de pastel en un pequeño y agradable café, y así sucesivamente, se obtiene la imagen :)

/B2S

4

Repetir todo el sentimiento por encima de, apoyo firmemente la idea de aprender varios idiomas, y la obtención de alto dominio de al menos dos idiomas muy diferentes. De hecho, creo que conocer cinco idiomas superficialmente es beneficioso, si despierta tu curiosidad para aprender más, pero aún debes dominar más de un idioma "hasta los huesos".

Aquí hay algunas categorías (no exclusivas) de idiomas que quizás desee considerar.

  • Compilado (C, C++, ...)/Interpretado (Perl, Ruby, Python, PHP, ...)/JIT (Java)
  • Alto Nivel/Bajo nivel
  • orientada a objetos/Procedimientos/declarativa/Funcional
  • Establecido/Experimental
  • general/de propósito especial/dominio específico
  • fuertemente tipado/sin apretar mecanografiadas

Entender las concesiones y las filosofías detrás de estos lenguajes y su implementación necesariamente te harán un mejor programador. Claro, puede llevar tiempo experimentar con todos ellos y llegar a dominar algunos de ellos. Pero la experiencia es gratificante comenzar incluso en el primer paso, con gratificación y beneficios inmediatos, por lo que no debe desesperar por la gran cantidad de opciones.

1

Muchos buenos consejos aquí. Sería el segundo en la mayoría, si no en todo.

Dada mi experiencia, sugeriría seleccionar tres idiomas. Elegiría la que parece más accesible y útil para aprender primero, y conocer la sintaxis lo suficientemente bien para poder detectar problemas con el código existente, pero no siento que deba dominarlo hasta el punto donde escribes un código experto libre de errores de la memoria. Use su documentación y referencia como dispositivo de flotación mientras trabaja y aprende. Dedique más tiempo a dominar los conceptos ... ¡especialmente la depuración! Y salta y prueba cosas, incluso si lo que terminas construyendo al principio es bastante malo o puede que no funcione en absoluto. (Siento que los conceptos que son más sólidos en mi cabeza son los que casi me suicido tratando de corregir, en lugar de aprender leyendo a fondo las ideas antes de intentar codificar.)

Una vez que tienes la primera el lenguaje bajó bastante bien, pasa al segundo, tal vez aquel en el que la sintaxis es lo más diferente posible del primero. Este enfoque me hizo extraconsciente de los conceptos y confirmó que no necesitaba ser un experto en sintaxis para realizar el trabajo. Después de todo, normalmente hay toneladas de documentación, tutoriales y discusiones disponibles para todos.

Luego tome el tercer idioma y sumérjase. Se sorprenderá de lo fácil que es ese tercero. Verá el punto medio, en sintonía, entre los dos extremos que ya ha aprendido, y qué tan similares son los conceptos de programación.

Si desea ser extremadamente competitivo y comercializable, puede elegir sus idiomas según la diversidad: por ejemplo, uno que sea bueno para la web en el lado del cliente, uno que sea bueno para el servidor y uno que sea bueno para plataforma/desarrollo del dispositivo. O elija los idiomas según lo que sabe que disfrutará construir. Descubrí que es muy gratificante y que me mantiene interesado; es decir, si usted sabe que es un fanático del juego, solo aprenda idiomas que le permitirán construir y portar juegos robustos a diferentes plataformas, y mantener su enfoque.

Por último, no se presione sobre sí mismo comparándose con otros desarrolladores y sintiéndose como si tuviera que ser como ellos, o aprenda lo que ellos hicieron, como lo hicieron, tan rápido como lo hicieron. Experimente y descubra lo que funciona para usted y quédese con él.

Sólo mis dos centavos. ¡Buena suerte!

Cuestiones relacionadas