JavaScript surgió a mediados de los 90 como una tecnología para soportar páginas web dinámicas desde el lado del cliente (el navegador web), en contraposición a JSP, PHP y ASP, que trabajan a nivel del servidor (Apache, nginx, IIS… ). Según nos cuentan en Wikipedia, JavaScript es un lenguaje de programación a alto nivel, multiparadigma, orientado a objetos, imperativo, funcional y dirigido por eventos.
La historia de JavaScript ha estado muy ligada a la de HTML y CSS, aunque con el paso de los años se lo ha visto implementado más allá de la web. De hecho, actualmente es utilizado tanto por GNOME como Qt, y tenemos tecnologías como Node.js que ejecutan JavaScript a nivel de servidor, por lo que en la actualidad no solo se usa para trabajar a nivel del cliente.
Se lo puede considerar un lenguaje engañoso, porque tras una apariencia simple y falta de potencia, JavaScript ha ido creciendo hasta convertirse en una especie de ciencia en sí mismo, con una gran cantidad de tecnologías derivadas como jQuery y AngularJS que poco a poco se han ido abriendo paso hasta ser realmente importantes, sobre todo la primera, que prácticamente se ha consolidado como un componente básico de la web. Tampoco podemos olvidarnos de AJAX, que permite mantener una comunicación asíncrona entre el cliente y el servidor en páginas web.
Tecnologías derivadas para aumentar las posibilidades de las páginas web dinámicas a nivel del cliente, otras que lo utilizan a nivel de servidor e incluso es empleado para la creación de aplicaciones “nativas”. Es obvio que JavaScript es uno de los lenguajes más básicos a aprender, y posiblemente actualmente no solo para ser desarrollador web, sino para ser programador y desarrollador en general.
Cuando se es novato en algo lo recomendable suele ser empezar por el principio, por eso vamos a compartir una serie de recursos para iniciarse en este popular lenguaje de programación, que actualmente es usado en muchos contextos diferentes.
La guía de JavaScript de Mozilla es una de las mejores formas de empezar a aprender este lenguaje que nació bajo el seno de Netscape Corporation, empresa que desarrolló el navegador que luego se convertiría en Mozilla Firefox tras la publicación de su código. Resulta bastante completo y puede adaptarse a diversos perfiles de programadores y desarrolladores, ya que va desde lo más básico hasta abarcar cosas más complejas como la programación orientada a objetos, el manejo de errores, el control de flujo, arrays, funciones, etc.
Para tener un primer contacto con el lenguaje también se puede recurrir a W3C Schools. Además de muchos ejemplos prácticos, el usuario podrá modificar el código para ir experimentando y ver los resultados. Al igual que la guía de Mozilla, W3C Schools pone a disposición una gran cantidad de ejemplos que abarcan muchas de las posibilidades relacionadas con la web.
Además de recursos publicados en Internet, posiblemente tener un libro sea un buen apoyo para tener explicados los fundamentos de forma más detallada. Aquí recomendamos Speaking JavaScript: An In-Depth Guide for Programmers de O’Reilly, que está bastante bien planteado y va introduciendo al lector poco a poco, comenzando con una breve descripción y los conceptos más básicos para luego abarcar aspectos más complejos de ECMAScript 5. Se puede adquirir en Amazon España al precio base de 41,60 euros.
¿Qué utilizar para escribir código? JavaScript es un lenguaje muy extendido, por lo que hay decenas de herramientas que lo soportan. Para los novatos sería recomendable recurrir a algún editor de código básico como Geany (GNU/Linux) o Notepad++ (Windows). Una vez se esté empezando a gestionar proyectos más complejos, se puede dar el salto a editores más potentes como Visual Studio Code, Atom y Brackets. Los que prefieran un IDE tienen como opciones a NetBeans y Aptana Studio.
Como ya hemos comentado, JavaScript es a día de hoy uno de los lenguajes más utilizados en el mundo de la computación, por lo que aprenderlo es fundamental para ser un desarrollador competitivo en el mercado laboral actual, y por lo que hemos podido ver, incluso más allá de la web.