Prueba Velneo Gratis

Te ofrecemos todo el poder de Velneo durante 1 mes para desarrollar la aplicación que tu empresa necesita.

Saber más
Thank you! Check your email for confirmation.

¿Qué lenguaje de programación es el más importante a nivel didáctico?

Wolseley_6-cylinder_marine_oil_engine_(Rankin_Kennedy,_Modern_Engines,_Vol_V)

El otro día en un foro de programadores uno de ellos hizo la siguiente pregunta: ¿Qué lenguaje de programación es el mejor a nivel financiero? ¿Cuál es el más rentable para el programador? Por alguna razón la conversación tomo otra deriva y acabaron debatiendo sobre qué lenguaje de programación es el más importante a nivel didáctico. Si lo piensas un rato, ambas preguntas están relacionadas. ¿Por qué? Porque los desarrolladores de software potencialmente más productivos son aquellos que más saben. Otra cosa es que pongan su sabiduría a servicio de la productividad y la rentabilidad, pero eso es harina de otro costal.Para contextualizar un poco la discusión os pongo en antecedentes.Un programador mayor de 50 años con su propia empresa de desarrollo comenta que en su vida había contratado a muchos ingenieros de software y afirmaba que la destreza más valiosa era la habilidad de pillar cualquier concepto y dominarlo enseguida. Comenta también que hace unos años una empresa offshore le programaba en Java un software de calidad inconsistente. Trabaja con ellos por remoto y los elegía viendo sus CVs, pero no podía entrevistarles en persona porque no hablaban inglés. A continuación dice: "Este tipo de factor limitante es ideal para hacer experimentos".Y más abajo comenta: "la verdad es que los currículos de los programadores todos tenían buena pinta, con muchos de experiencia. Aún así el código tenía bugs, era difícil de leer y estaba mal organizado. Como experimento empecé a pedir solo programadores de C++. Algunos de ellos no sabían Java, pero estaba dispuesto a pagarles para que lo aprendieran unas cuantas semanas. Con la ayuda de otros programadores fueron capaces de hacerse con el lenguaje y sus construcciones más recurrentes, y al poco tiempo se convirtieron en mis programadores preferidos para mis proyectos."Lo que viene a decir esta persona es que para aprender a programar bien, lo mejor es aprender C/C++. Quizás nunca lo llegues a utilizar a nivel profesional (por cierto Velneo ahora mismo busca uno), pero aprenderlo te puede servir para toda la vida en forma de lecciones de programación. Y aquellas tareas más complejas, las que resuelven los programadores top, tarde o temprano se topan con código fundacional escrito en C.Aquí hay una serie de cosas escritas en C:

  • La máquina virtual Java está hecha en ANSI C
  • Velneo está programado en C++ sobre las librerías QT
  • Linux está programado en C
  • Python está programado en C
  • Mac OS X kernel está programado en C
  • Windows está programado en C y C++
  • Oracle database está programada en C y C++

Casi cualquier cosa que se de núcleo, complejo y que requiera de rendimiento crítico, seguro que está escrito en C, con algo de ensamblador por el medio. Saber C te hará mejor programador en Java. C++ te hará ser mejor programador en Python. Su clase mecanismo está principalmente basado en C++. Te obligará a escribir código limpio y bien ordenado si quieres ser capaz de mantenerlo y actualizarlo. Aprenderás a ser cuidadoso con tus variables globales. C te hará mejor programador en Objective-C. Sabrás como gestionar tus refcounts y qué trozo de código debe contener un objeto. Serás capaz de evitar fugas de memoria.En el mismo hilo del foro, otro se pregunta: ¿cuál es mejor, C o C++?La mayoría se inclina por C++ -son muy parecidos en verdad- porque te beneficias de la programación orientada a objetos. Incluso si ya estás decidido en programar en lenguajes de programación funcionales, aprender a pensar en OO te enseña patrones de organización que son críticos a la hora de ingeniar y mantener proyectos grandes.La gran ventaja de aprender C es, en definitiva, que te reduce la curva de aprendizaje de cualquier otra cosa que aprendas después. Y esto es básico en la industria de la programación porque hay una constante a largo plazo en esta industria: lo que está en auge hoy probablemente sea una novedad arcaica en pocos años. Si aprendes los fundamentos detrás de los lenguajes tendrás mayor recorrido profesional a largo plazo.Ahora bien, pretender vivir de programar en C no es viable. O aprender C como único lenguaje de programación. O que puedas ganar más dinero por hora programando en C que en Java. En general, no deberías programar nada en C a no ser que tengas una muy buena razón para hacerlo.Si quieres ser el mejor piloto de Fórmula 1, aprende a desmontar el motor. No porque ello sea tu trabajo, pero porque te hará mejor en tu trabajo. Y mientras los coches evolucionan y cambian con el tiempo, entenderás mejor lo que les hace diferentes también.

Regístrate ahora y nuestro equipo se pondrá en contacto muy pronto