módulo en Node.js
¿Qué es un módulo en Node.js?
Un módulo es un archivo JavaScript (o colección de archivos) que encapsula código relacionado. Los módulos te permiten organizar tu aplicación en partes reutilizables y mantener el código limpio.
Tipos de módulos en Node.js
1. Módulos nativos (core modules)
Vienen incluidos con Node.js. No necesitas instalarlos.
const fs = require('fs'); // Sistema de archivos
const http = require('http'); // Servidor HTTP
const path = require('path'); // Rutas de archivos
const os = require('os'); // Información del sistema2. Módulos locales (propios)
Son archivos que tú creas. Cada archivo es un módulo.
// archivo: math.js
const sumar = (a, b) => a + b;
module.exports = { sumar };
// archivo: app.js
const { sumar } = require('./math.js');
console.log(sumar(5, 3)); // 83. Módulos de terceros (npm packages)
Los instalas mediante npm (Node Package Manager).
npm install express
npm install axios
npm install lodashconst express = require('express');
const axios = require('axios');
const _ = require('lodash');La carpeta node_modules
Cuando instalas paquetes con npm, se crea una carpeta llamada node_modules donde se guardan todas las dependencias del proyecto.
mi-proyecto/
├── node_modules/ # Todas las dependencias instaladas
│ ├── express/
│ ├── axios/
│ └── ...
├── package.json # Lista de dependencias
├── package-lock.json # Versiones exactas
└── app.js # Tu códigoEl archivo package.json
Define las dependencias de tu proyecto:
{
"name": "mi-app",
"version": "1.0.0",
"dependencies": {
"express": "^4.18.0",
"axios": "^1.3.0"
}
}Sistema de módulos en Node.js
Node.js usa dos sistemas de módulos:
CommonJS (tradicional)
// Exportar
module.exports = miFuncion;
// Importar
const miFuncion = require('./mi-modulo');ES Modules (moderno, Node.js 12+)
// Exportar (necesitas "type": "module" en package.json)
export const miFuncion = () => {};
// Importar
import { miFuncion } from './mi-modulo.js';Buenas prácticas
No subas
node_modulesa Git - usa.gitignoreUsa
package-lock.jsonpara versiones consistentesInstala dependencias con
--save(ahora es por defecto)Distingue entre
dependenciesydevDependenciesdependencies: necesarias en produccióndevDependencies: solo para desarrollo (testing, linting, etc.)
npm install express --save-prod # dependencies
npm install jest --save-dev # devDependenciesComandos útiles
npm init -y # Crear package.json
npm install # Instalar todas las dependencias
npm install nombre-paquete # Instalar un paquete
npm uninstall nombre-paquete # Eliminar un paquete
npm update # Actualizar paquetesResumen visual
Tu Código → require/import → Node.js → Busca en:
1. Módulos nativos
2. Módulos locales (./archivo)
3. node_modules/¿Hay algún aspecto específico que quieras que profundice más?
Comentarios
Publicar un comentario