Ir al contenido principal

Introducción a Node.JS

Node.JS: lo instalas para ejecutar un ‘Hola Mundo’ y terminas con una carpeta que pesa más que tus vacaciones en HD.

Como tal, JS es simplemente un lenguaje de programación: Permite definir una secuencia de acciones para conseguir un determinado fin, pero por si mismo JS no hace nada. El encargado de ejecutar un conjunto de instrucciones definidas en JS es otro componente, llamado Runtime Environment o entorno de ejecución.

An antropomorphic runtime in the form of worker executes a to do list as a metaphor of Node.JS executing a JS program

Uno de los entornos de ejecución, o runtimes, más famosos para JS es Node.JS (en adelante simplemente Node), mientras que otro grupo de runtimes serían aquellos incluidos -o embebidos en- los distintos navegadores, utilizados para ejeccutar el código JS embebido en cada vez más páginas web.

Por qué Node.JS

Node.JS no es el único runtime disponible para ejecutar código Javascript localmente. Existen otras opciones, como Deno o Bun que sirven para el mismo propósito que Node.JS, pero éste último se impone (a día de hoy) a otros por distintas razones:

  • Madurez y estabilidad: Node.JS es el runtime más maduro y estable para JS lo que implica que, en entornos profesionales, sea la opción elegida cuando de desarrollan en JS se trata.
  • Extensísima cantidad de librerías disponibles: Me adelanto un poco al guión al contar que Node.JS incluye el famosísimo gestor de paquetes npm, que permite el acceso a miles de paquetes gratuitos alojados en npmjs (las librerías en JS se denominan paquetes, packages en inglés).
  • Gran adopción a nivel enterprise: Como consecuencia de las dos anteriores, Node.JS es un runtime sobradamente adoptado en el entorno profesional, al nivel de otros como Java, Python, Go o C-Sharp.

Instalación

Puesto que la instalación de node depende del sistema operativo utilizado, no voy a entrar en detalles de cómo hacerlo. La sección descargas de la web de Node.JS incluye toda la información necesaria, incluyendo enlaces a los instaladores y binarios.

Eso sí, antes que te lances de cabeza a instalar, y sobre todo si vas a instalar Node.JS en MacOS o Linux, es importante que sepas de la existencia de nvm (Node Version Manager).

Node Version Manager

nvm es una utilidad que nos permite instalar/desinstalar distintas versiones de Node.JS, ejecutar código utilizando una versión específica del runtime o mostrar qué versiones tenemos instaladas, entre otras.

En mi opinión, en entornos MacOS o Línux (Windows no soporta nvm), comenzar instalando nvm y, a partir de ahí, instalar Node.JS es fundamental. De otro modo lidiar con distintas versiones locales de Node.JS se vuelve un dolor de cabeza.

Si te he convencido, estos son los pasos para instalar Node.JS desde nvm:

  1. Instalar nvm:
    • con brew (brew install nvm) en MacOS
    • en Linux, sigue las instrucciones sobre instalación de nvm en su repositorio de GitHub.
  2. Una vez nvm instalado, instalar la última versión disponible de Node.JS: nvm install node
  3. Consultar la versión de Node.JS instalada:
    • nvm ls
    • node --version

Usando node

Si recuerdas, en el capítulo pasado presentamos un pequeñísimo trozo de código, de hecho una línea, con el recurrente "Hola Mundo" programado en JS:

// Primer programa en JS: hola mundo
console.log("Hola, mundo!")

La verdad es que, aunque vamos a dedicar el próximo capítúlo a este programa, dejaría mal sabor de boca acabar éste sin haber siquiera comprobado de qué es capaz node.

Puesto que nuestro programa, excluyendo el comentario, contiene una sola línea console.log("Hola, mundo!"), en el próximo vídeo ejecuto node en modo REPL (Read-Eval-Print Loop), que básicamente es un modo de funcionamiento en el que node presenta un shell al usuario que se ejecuta en bucle, leyendo una instrucción por línea, evaluándola y ejecutándola, de modo que el resultado de la línea se imprime en pantalla.

Durante el curso veremos que el modo REPL es realmente útil para realizar pruebas sencillas con node sin necesidad de tener que escribir código en un archivo y luego ejecutarlo.

Objetivos conseguidos

En este capítulo hemos hecho una brevísima presentación de Node.JS, explicando qué es, cómo se instala (incluyendo también el uso de la utilidad de gestión nvm) y cómo podemos acceder al modo REPL para evaluar líneas de código escritas en JS.

Aunque Node.JS da para un curso entero, con lo visto tenemos suficiente para comenzar a ejecutar código escrito en JS.

Próximos pasos

En el último capítulo de este bloque introductorio uniremos partes que hemos ido viendo por separado. Ahora que tenemos disponible tanto VSCode como Node.JS, escribiremos y ejecutaremos desde VSCode nuestro primer programa escrito en JS.