Tras muchos meses sin tocar Javascript, hoy me centro en este lenguaje que, como sabeis, no me gusta nada, pero que nada nada! Ea, ya lo he dicho!
Menos mal que gracias a jQuery, mi productividad con este lenguaje es mucho mejor!
NOTA: La web WriteCodeOnline.com/JavaScript ya no está disponible, así que una buena alternativa es http://js.do.
Programando en Javascript
La verdad es que mientras que en Python puedes probar tu código, en Javascript es algo más complejo, pues tienes que cargar la página HTML, que a su vez tiene vinculado el código Javascript, …. y claro, así no hay quien aprenda! No hay un IDE específico para programar en Javascript, ni una consola directa donde ver ese código ejecutado.
Así que, para mejorar la experiencia con Javascript, he conocido el sitio WriteCodeOnline.com/JavaScript, lo que me permite escribir código fácilmente y ver el resultado. Normalmente lo uso para crear pequeñas (o no tan pequeñas) funciones, con la ventaja de que cómo normalmente utilizo Notepad++, estoy acostumbrado al editor de texto.
Probando WriteCodeOnline
La verdad es que usar esta web para programar está genial, sobre todo combinada con FireBug (la extensión para depuración) para conocer los problemas de código. El ejemplo siguiente es una función para averiguar si el código postal de España (normalmente de 4 o 5 cifras) es correcto, respecto a la provincia (el codigo postal suele ser PPXXX donde PP es el código de provincia, y XXX es el asignado).
Cómo podeis ver, he provocado un error en este código, que puede descubrir gracias a FireBug, así que … mi experiencia es bastante buena, además de ser una herramienta online, y que puedo ver el resultado con document.write(valor).
JSFiddle, otra alternativa más completa
Otra alternativa más sofisticada es JSFiddle, donde además de Javascript, puedes seleccionar librerías jQuery, Prototype, YUI, …, además de la posibilidad de usar CSS y HTML, todo en un mismo sitio. La he utiliado sobre todo cuando las necesidades de programar Javascript requieren usar jQuery, por ejemplo, o también interoperar con código HTML con INPUTs, …
Patrones en Javascript y jQuery
Gran parte de culpa de ese “odio” a Javascript procede de mi falta de experiencia, o también porque …. todo es muy sencillo en Python. El caso es que para llevarme mejor con Javascript, convendría conocer algunas reglas de este lenguaje (bueno, …. reglas y Javascript no se llevan muy bien). Y es que me parece un poco raro (a nivel de programación) que la misma cosa se pueda hacer utilizando dos patrones totalmente diferentes, pero que son lo mismo. Y claro, esto confunde mucho a los principiantes.
Aquí teneis un ejemplo de cómo crean una función, donde puede usarse cualquiera de estos 4 métodos (sí, no uno ni dos, sino CUATRO) . Así que, para mejorar, aquí les dejo esta magnífica web donde teneis una extensa recopilación de patrones en Javascript y para jQuery: http://shichuan.github.io/javascript-patterns/. Como podeis ver, además de la forma más rápida, también muestra la más correcta, y varias optimizaciones (en definitiva, hacer lo mismo de varias formas diferentes … un lio!!).
Afortnadamente, he conocido TypeScript, un lenguaje de Microsoft que trata de hacer más asequible Javascript, y al que dedicaremos un buen puñado de entradas en las próximas semanas!
Y bueno, espero que tras leer esta entrada, también probeis las herramientas que normalmente utilizo para que os guste Javascript, un poquito más! je je!!
Happy coding!