JavaScript era el lenguaje que se utilizaba en la web para añadir efectos y animaciones a las páginas. Pero este lenguaje ha evolucionado mucho en nuestros días hasta llegar al punto de ser llevado al servidor con Node.js.
Node.js es un entorno de programación dirigido por eventos, es decir es el usuario el que define el flujo del programa mediante la interfaz de usuario, en este caso la página web y sigue un modelo no bloqueante de entrada y salida, esto nos permite hacer una programación asíncrona, parecido al AJAX en JavaScript y tiene un muy buen rendimiento debido a que corre todas las conexiones entrantes sobre un mismo hilo y le deja la labor al Sistema Operativo de realizar todas las operaciones en la pila de ejecución. Por supuesto también han surgido frameworks para hacer más sencilla la programación en el lado del servidor. Existen varios, el más conocido y extendido es Express.
JavaScript ha evolucionado hasta tal punto que también podemos encontrarlo en bases de datos, como es el caso de MongoDB, una base de datos no relacional cuyos registros son almacenados como documentos de tipo BSON: Binary JSON que permite que la lectura y escritura de datos sea muy rápida y de manera átomica, siempre que organicemos nuestro modelo de datos siguiendo una estructura no relacional. Es una manera diferente de pensar al clásico SQL.
API es la clave para desacoplar las apps