Node.js se ha convertido en una herramienta indispensable para el desarrollo de front-end moderno, sin embargo, tanto el lenguage JavaScript como las herramientas de node evolucionan rápidamente, desde el lanzamiento de Node.js en 2011 contamos con 8 versiones no retro compatibles.
Node.js se puede describir con una simple frase: “JavaScript en el
servidor”, antes de Node.js JavaScript era un lenguaje del cliente, y
era interpretado por un navegador, cuando llegó node
, permitió a los
desarrolladores escribir programas que corrían en el lado del servidor, los
ejemplos más impactantes eran servidores HTTP asíncronos en unas pocas líneas
de código:
// server.js
var http = require('http');
var server = http.createServer(function (request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.end("Hello World\n");
});
server.listen(8000);
console.log("Server running at http://127.0.0.1:8000/");
para ejecutar este servidor bastaba con escribir node server.js
y este
sencillo código podía manejar una gran cantidad de peticiones en "paralelo"
gracias al non blocking I/O con el que node
se construyó desde un
principio.
Para los que preferimos otros lenguages de programación como Python para el
backend de nuestras aplicaciones, node
también se hace indispensable para el
flujo de trabajo, porque facilita la construcción de single page aplications,
que es la manera preferida de construir aplicaciones web hoy en día (con esto
no quiero decir que otras metodologías no sean útiles ahora, pero construir
una API y una aplicación web que la consuma se ha hecho bastante accesible
incluso para equipos pequeños de desarrollo).
Para instalar Node.js recomiendo usar node version manager, también conocido como nvm. Este pequeño script permite instalar varias versiones de Node.js y usarlas a conveniencia en el momento necesario. La instalación de nvm puede realizarse usando un script de instalación listado en el github del proyecto,
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
el script clona el repositorio y agrega una línea a la configuración de la
consola de mandos ~/.bashrc
o ~/.zshrc
para agregar el programa nvm
al
$PATH
del sistema, por tanto se debe reiniciar la ventana de la terminal.
Después de instalar nvm
podemos proceder a instalar versiones de node
. Es
bueno usar una version recomendada de node
, conocida como LTS long term
support al tiempo de escritura la versión de soporte es lts/boron
versión
6.x
. Para instalarla, basta usar el comando,
nvm install lts/boron
Si ésta es la primera vez que usamos el comando, se creará un alias default
a esta version y se usará en la consola por defecto. Otros comandos importantes
son:
nvm ls
lista las versiones instaladas en el sistema.nvm ls-remote
lista las versiones disponibles para instalar.nvm use <version>
usa una versión instalada en la consola.nvm default <version>
configura la versión por defecto de node
a usar.Podemos verificar la versión de node
usada en la consola con:
node --version
# y de npm
npm --version
Podemos también instalar paquetes:
# globalmente con
npm install -g <paquete>
# localmente con
npm install <paquete>
Y además podemos poner un archivo .nvmrc
en nuestros proyectos para
sincronizar la versión de node
usada por los distintos desarrolladores.