Actualización (octubre 2015): Este tutorial está actualizado a la versión de express 3.0.0rc3. Si intentas seguirlo con versiones anteriores o posteriores, puede que tengas que ajustar algunas cosas. Para tener información detallada sobre versiones actualizadas de node.js y express, te recomiendo que le eches un vistazo a Express in Action: Node applications with Express and its companion tools, donde se explica de una forma bastante amena cómo crear aplicaciones web usando Node.js y Express.
Este post forma parte de una serie de varios:
- Tutorial node.js + express + jquery (I): Creando la aplicación.
- Tutorial node.js + express + jquery (II): Generando vistas con Jade.
- Tutorial node.js + express + jquery (III): Usando jQuery.
- Tutorial node.js + express + jquery (IV): Conclusiones y próximos pasos (esto que estás leyendo).
- Puedes descargar el código fuente de GitHub.
En este último post de la serie quiero hacer un pequeño resumen de lo que hemos hecho y también de algunas cosas que NO hemos hecho y sería bueno hacer o, al menos, investigar un poco.
Lo que ya sabemos
Está claro que la aplicación de ejemplo era una chorrada, pero aun así nos ha permitido poner en práctica bastantes conceptos útiles a la hora de desarrollar una aplicación con node.js y jQuery. Con lo que hemos visto, podemos:
- Crear una aplicación con express y ajustar su configuración (View Engine, contenido estático, etc.).
- Crear vistas con Jade, incluyendo en ellas datos generados dinámicamente y usando un layout para mantener consistente el aspecto general del sitio.
- Configurar rutas en express, utilizando distintos métodos HTTP y accediendo a los parámetros que aparecen en la url de la ruta.
- Definir funciones para procesar rutas y devolver HTML (a través de Jade).
- Definir funciones para procesar rutas y recibir/devolver JSON.
- Usar jQuery para realizar peticiones GET al servidor y descargar datos para mostrarlos en la página.
- Realizar peticiones POST con jQuery para enviar al servidor cambios generados en el cliente.
No está mal. Estos bloques cubren bastantes de las cosas que son necesarias para hacer una aplicación web «moderna». Sin embargo, hay muchas cosas que se han quedado por el camino.
Lo que podemos mejorar
Entre las cosas que no hemos tratado, hay algunas que me parecen especialmente importantes:
- No hemos escrito ningún test unitario. Personalmente, me gusta expresso para crear tests sobre node.js.
- No hay ningún tipo de control sobre la sesión. Es una aplicación de verdad, es probable que haya que controlar temas como autenticación, autorización, etc., y mantener estado entre distintas peticiones HTTP de un mismo cliente.
- No hemos tocado ninguna base de datos. Los datos están almacenados en memoria y se pierden cada vez que se reinicia la aplicación. Puestos a jugar con eso, sería interesante probar MongoDB+mongoose o cualquier otra base de datos NoSQL.
- El sistema de asignación de rutas a funciones, es decir, el
app.get(‘/’, routes.index)
, es muy rudimentario. Estaría bien buscar una forma de montar un MVC más decente. - Podíamos haber aprovechado las herramientas que brinda jQuery UI para hacer un interfaz de usuario más atractivo y amigable.
- Para la parte cliente, se podría haber usado alguna librería MVVM que facilitase la parte de databinding y validación, como por ejemplo, Knockout o Backbone.
En definitiva, si te ha parecido interesante el tutorial y quieres jugar más con node.js y jquery, creo que han quedado en el aire suficientes cosas como para pasar un rato entretenido. Es posible que en el futuro hable sobre alguna de ellas, así que si te interesa, ya sabes, suscríbete a este blog :-)
Pingback: Tutorial node.js + express + jquery (I): Creando la aplicación « Koalite's blog
Pingback: Tutorial node.js + express + jquery (II): Generando vistas con Jade « Koalite's blog
Pingback: Tutorial node.js + express + jquery (III): Usando jQuery « Koalite's blog
Muy buen tutorial. Estoy empezando con Node.js, Express y Jade y tu tutorial explica de forma muy clara como comenzar en este mundo de desarrollo de aplicaciones web ‘modernas’.
Muchas gracias y espero ver mas tutoriales tuyos.
Brett Alistair Kromkamp
Excelente un buen tutorial para arrancar en el mundo de Node.js, Express y jade
Te la rifaste con el tutorial, muy bueno en verdad para todo aquel que quiere aprender un poco sobre node.js
Exito!
Pingback: Tutorial node.js + express + jquery (IV): Conclusiones y próximos pasos | javascript.js | Scoop.it
Muy bueno el tutorial para quien se inicia en node.js como yo gracias por compartir.
Este tutorial esta genial que que bueno que hay gent como tu que comparte lo que sabe
excelente tutorial, gracias por tus aportaciones !!!
Muchas gracias por tu tutorial, lo pude adecuar para node v0.10.26 y express 4.12.1, ha sido muy ilustrativo
Pues a mi me interesaría el ejemplo migrado a 4.x
Buenísimo. Era algo que estaba buscando para iniciar node js.
Gracias