Librerías (Node.js)
Las librerías son una parte fundamental de cualquier lenguaje de programación y nos permiten reutilizar código que otros desarrolladores han escrito y publicado.
A las librerías se les llama paquetes en Node.js.
Node.js viene con un manejador de paquetes llamado npm. Un manejador de paquetes nos permite descargar los paquetes que han creado otros desarrolladores y utilizarlos en nuestras propias aplicaciones. También nos permite crear y publicar nuestros propios paquetes.
Hace un par de años surgió un nuevo manejador de paquetes llamado Yarn que cada día toma más fuerza. Veamos cada uno en detalle.
npm
npm es una aplicación para la línea de comandos que viene incluída en Node.js, así que no es necesario instalar nada adicional.
Instalando paquetes
Con npm puedes instalar un paquete en tu máquina de forma local (en una carpeta) o global, dependiendo de cómo lo vayas a usar.
Si vas a utilizar el paquete desde tu código debes instalarlo de forma local, en la misma carpeta de tu proyecto.
Si el paquete es una aplicación para la línea de comandos es mejor instalarlo de forma global, para que esté disponible desde cualquier ubicación de nuestro sistema.
Instalación local
Para instalar un paquete de forma local utiliza el comando npm install
seguido del nombre del paquete. npm crea una carpeta llamada node_modules
en la carpeta en la que estés ubicado(a), y ahí instala el paquete.
Por ejemplo, crea una carpeta llamada npm-test
e instala el paquete faker.js, que es una librería para generar datos ficticios ejecutando los siguientes comandos:
Revisa que exista la carpeta node_modules
y que dentro de esa carpeta exista una carpeta llamada faker
. En un momento vamos a ver cómo utilizar este paquete desde tu código.
Instalación global
Instalar un paquete de forma global es similar a instalar uno local, la única diferencia es que se debe agregar la opción -g
al comando npm install
.
Por ejemplo, para instalar learnyounode, un paquete que te enseña Node.js, ejecuta el siguiente comando desde cualquier ubicación:
Ahora verifica que haya quedado bien instalado ejecutando:
Ese comando lo puedes ejecutar desde cualquier ubicación de tu sistema.
Usando un paquete en tu código
Para usar un paquete debes requerirlo con la función require
. Por ejemplo, en la misma carpeta donde instalaste faker.js, crea un archivo index.js
con el siguiente código:
Ahora ejecútalo con el siguiente comando:
El resultado seguramente será diferente en tu caso.
Nuestra recomendación es que siempre consultes la documentación del paquete para ver cómo requerirlo y usarlo.
package.json
La mejor forma de de manejar paquetes en un proyecto es crear un archivo llamado package.json
.
package.json
es un archivo con formato JSON dónde se definen los paquetes de los que depende nuestro proyecto (con sus respectivas versiones). De esa forma va a ser mucho más fácil para otros desarrolladores instalar esas dependencias.
El archivo package.json
debe estar en la raíz de tu proyecto y debe tener, como mínimo, un nombre y una versión como se muestra a continuación:
El nombre debe ser una palabra en minúscula sin espacios, puedes utilizar guión (-
) y raya al piso (_
).
La versión debe ser de la forma x.x.x y debería seguir el versionamiento semántico, que define cuando incrementar cada uno de los números:
El último número se incrementa cuando se corrigen bugs y se realizan cambios menores que no afectan funcionalidades existentes.
El segundo número se incrementa cuando se introducen funcionalidades y cambios que no afectan las funcionalidades existentes.
El primer número se incrementa cuando se introducen cambios que afectan funcionalidades existentes.
La forma más fácil de generar el archivo package.json
para tu proyecto es utilizar el comando npm init
que te va a guiar en la creación de un package.json
mucho más completo con la descripción, el autor y la licencia de tu proyecto, entre otros.
Agregando dependencias
Existen dos tipos de dependencias que puedes agregar al package.json
:
dependencies: paquetes que son requeridos durante la ejecución del programa.
devDependencies: paquetes que se utilizan para desarrollo y pruebas.
Una forma de agregar dependencias a tu proyecto es agregándolas al archivo package.json
directamente. Por ejemplo, si queremos agregar una dependencia de ejecución llamada react
y otra de desarrollo llamada faker
podemos hacerlo de la siguiente forma:
Cada vez que modifiques manualmente el archivo package.json
asegúrate de ejecutar el siguiente comando para que se instalen los paquetes que agregaste o cambiaste:
Sin embargo, la forma más fácil de agregar una dependencia es utilizando npm install
con la opción --save
o --save-dev
. Por ejemplo:
Cuando descargues un proyecto que contenga un archivo package.json
no olvides ejecutar npm install
para descargar todas las dependencias.
La documentación completa de npm se encuentra en el siguiente enlace https://docs.npmjs.com/.
Yarn
Yarn fue el producto de la colaboración entre Facebook y Google para crear un mejor manejador de paquetes que npm.
El primer paso para utilizar Yarn es instalarlo en tu máquina. Ingresa a este enlace donde encontrarás las instrucciones para tu sistema operativo.
Yarn es compatible con npm, así que puedes utilizar el mismo archivo package.json
. Los comandos también son muy similares, la diferencia más importante es que en vez de npm install
se utiliza yarn add
.
Para inicializar un nuevo proyecto utiliza:
Para agregar una dependencia de ejecución de forma local utiliza:
Para agregar una dependencia de desarrollo o pruebas de forma local utiliza:
Para instalar las dependencias de un proyecto (cuando has hecho cambios al package.json
o has descargado un nuevo proyecto):
Para instalar un paquete de forma global utiliza:
La documentación completa de Yarn se encuentra en el siguiente enlace: https://yarnpkg.com/en/docs.
Last updated