Javascript es fácil de aprender

Bueno, en realidad no lo es en absoluto. Puede parecerlo a primera vista porque:

  • No hay que tipar las variables ni las funciones.
  • No hay que usar clases, podemos escribir todo el programa directamente en el mismo archivo o incluso junto al HTML de una página
  • Los navegadores son bastante indulgentes cuando cometemos algunos errores.

Esto puede que ayude al principio cuando no sabes nada de programación, porque a la mayoría de la gente lo que más le cuesta de aprender a programar es en realidad aprender a escribir en un lenguaje estricto con coherencia. La mayoría de los lenguajes de programación, o mejor dicho, sus compiladores, no perdonan una. Y es desesperante ser bombardeado con mensajes de error en una jerga incomprensible cada vez que añadimos una nueva instrucción al programa en la que probablemente falta una coma o un punto y coma.

Peeeero…, la realidad es que para programar:

  • Hay que aprender a ser meticulosos con la sintaxis.
  • Adquirir la costumbre de entender lo que significa cada palabra que escribimos en en contexto en el que la escribimos.
  • Aprender a separar responsabilidades dentro de un programa y mantenerlas separadas en diferentes bloques de código (ya sean objetos, módulos o funciones).
  • Entender los mensajes de error que da el compilador o intérprete.

Es perfectamente posible hacer todo esto en Javascript. De hecho es posible hacerlo de formas muy elegantes, en mi opinión. Pero las técnicas para hacerlo no son muy evidentes. De hecho, hay mil formas de llegar a cada objetivo, más que en muchos otros lenguajes, porque Javascript es tremendamente flexible. Además se da el caso de que la solución que aparece como más inmediata está lejos de ser la mejor o incluso buena en muchos casos.

Así que uno podría decir que si bien Javascript hace más fácil el inicio del camino, es porque hace más difícil el camino completo hacia el dominio del lenguaje.

Las características del lenguaje que lo hacen realmente potente, no se usan habitualmente en otros lenguajes:

  • Objetos basados en prototipos
  • Lambdas
  • Clausuras

No es que otros lenguajes no las tengan, pero el programador medio no está familiarizado con ellas. No son fáciles de dominar y en Javascript es necesario hacerlo para escribir programas de calidad.

¿Significa esto que Javascript es un mal lenguaje para empezar a programar? Honestamente, no lo sé. Lo que sí que sé es que es probablemente el lenguaje más utilizado hoy en día, con el que es más fácil conseguir un trabajo, y que es difícil que un programador pueda escapar sin lidiar con él en algún punto de su carrera. ¿Son estas razones suficientes para aprenderlo como primer lenguaje?¿Tú que opinas?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.