Tutorial de CoffeeScript

May 24 2011

CoffeeScript es un lenguaje de programación que se compila a javascript. Su gran atractivo es que vendrá incluido para su uso opcional en Rails 3.1. A continuación os pongo algunas de las ventajas que supone CoffeeScript para un desarrollo web ágil.

Así pues, resumiendo, podemos decir que CoffeeScript hace que el código javascript sea más Ruby, debido a algunos aspectos como:

- Podemos quitar las llaves
- Como consecuencia, es necesario una correcta identación
- No es necesario usar ‘var’
- Podemos quitar el return
- Podemos quitar el ‘;’
- Podemos quitar los paréntesis; pero si no hay argumentos a pasar, hay que ponerlos
- Se pueden definir funciones en una sola línea
- Se puede cambiar this. por @
- Ejemplo bucle: alert(number) for number in [1..5]
- Se puede combinar con jQuery sin problemas
- Cambiar function() por →
- Se puede hacer debugger con la consola javascript

Al final, un ejemplo vale más que mil palabras, y lo mejor es poder probarlo para darse cuenta de su potencia. Así pues, un código javascript como el siguiente:

var mostrar_texto, number;
mostrar_texto = function(mensaje) {
  return alert(mensaje);
};
for (number = 1; number <= 5; number++) {
  alert(number);
}
mostrar_texto(Ejemplo de llamada a función);

Quedará en CoffeeScript como:

mostrar_texto = (mensaje) -> alert(mensaje)
alert(number) for number in [1..5]
mostrar_texto("Ejemplo de llamada a función")

Como siempre, aquí sólo doy unas pinceladas de las ventajas, pero se puede consultar toda la información en su página, http://jashkenas.github.com/coffee-script, donde además tenemos una sección donde probar nuestro código CoffeeScript y su equivalente en javascript.

Comentarios

Avatar
Megatux 29/11/2011 21:48:20
me imagino que el string del parametro de la funcion "mostrar_texto" va entre comillas. Saludos
Avatar
Juan de Frías (http://www.juandefrias.com/) 30/11/2011 08:38:14
Efectivamente, el string "Ejemplo de llamada a función" debe ir entre comillas. Lo he cambiado para evitar la confusión. Para salir de dudas, en el enlace de la web de coffee-script se puede probar el código tal cual. ¡Gracias por avisar!

Nuevo comentario