He trabajado / visto muchos lenguajes de programación que pertenecen a diferentes paradigmas. Así que creo que estoy calificado para responder esta pregunta.
- Todos los lenguajes de programación tienen muchas cosas en común como sentencias secuenciales, condicionales e iteraciones (la última puede simularse mediante una recursión de cola. Por lo tanto, algunos lenguajes como Haskell, Scheme no lo tienen).
- Recuerde que la memorización de la sintaxis NO ES GRAN TRATO.
- Recuerde que no tiene sentido memorizar funciones de biblioteca, nombres de clase, lista de parámetros. Tome la ayuda de IDE, documentación y StackOverflow.
- Aprender el paradigma subyacente del lenguaje de programación. Por ejemplo, si ya conoces a Haskell, aprender otro idioma funcional es muy fácil porque los mismos “conceptos” están empaquetados de una manera diferente.
- Aprende los puntos fuertes del lenguaje y concéntrate en eso. Por ejemplo, Golang tiene un buen soporte para la concurrencia, al igual que Erlang.
- Al aprender un idioma o un marco, en lugar de mirar los detalles específicos, aprenda la idea general. Por ejemplo, en lugar de entender “Ruby on Rails” al principio, entienda el patrón “MVC”.
- Lo más importante es aprender de qué se trata la “programación” y las diferentes maneras de descomponer los problemas. El punto 4 ya menciona paradigmas de programación. Esto está conectado a eso.
- Aprenda estructuras de datos, algoritmos, conceptos de sistemas operativos, redes, compiladores, etc. Estos son los fundamentos que no cambiarán a menos que haya un gran cambio de paradigma en cada uno de estos campos.
- Finalmente usa el lenguaje y construye algo. Empieza pequeño.
Todo lo mejor 🙂