Hoy continué mi viaje de aprendizaje de Node.js con la ayuda de la IA, y el tema del día 2 fue el sistema de módulos en Node.js. Como ya estoy familiarizado con JavaScript, fue interesante aprender cómo este lenguaje organiza el código en módulos, lo que facilita su estructura y reutilización.
Primero, repasé la parte teórica, que explicaba dos conceptos clave:
require: Esta función se utiliza para importar módulos a su código. Cuando llamas a require('module_name'), Node.js encuentra el módulo especificado y devuelve su contenido. Puede ser un módulo integrado, un módulo del paquete node_modules o su propio módulo personalizado.
module.exports: Este objeto se utiliza para exportar la funcionalidad de un módulo para que pueda ser utilizada por otros módulos a través de require. Puedes exportar funciones, objetos, variables o clases.
Estos conceptos eran nuevos para mí en el contexto de Node.js, pero similares a lo que he visto en otros lenguajes de programación.
Comencé creando varios módulos para diferentes operaciones matemáticas, como se sugiere en el artículo.
addition.js: Este módulo realiza la suma.
function add(a, b) { return a b; } module.exports = add;
subtraction.js: Un módulo para restar.
function subtract(a, b) { return a - b; } module.exports = subtract;
multiplicación.js: Un módulo para la multiplicación.
function multiply(a, b) { return a * b; } module.exports = multiply;
division.js: Un módulo para división.
function divide(a, b) { if (b === 0) { return 'Error: Division by zero'; } return a / b; } module.exports = divide;
Después de crear estos módulos, comencé a escribir el archivo principal que los usaría.
calculator.js: En este archivo, importé todos los módulos que creé y escribí código para realizar operaciones aritméticas.
const add = require('./addition'); const subtract = require('./subtraction'); const multiply = require('./multiplication'); const divide = require('./division'); console.log("Addition: 5 3 =", add(5, 3)); console.log("Subtraction: 5 - 3 =", subtract(5, 3)); console.log("Multiplication: 5 * 3 =", multiply(5, 3)); console.log("Division: 6 / 2 =", divide(6, 2));
Después de completar las operaciones básicas, decidí desafiarme agregando nuevas funciones a la calculadora. Creé módulos adicionales para exponenciación y raíz cuadrada:
exponentiation.js: Un módulo para exponenciación.
function exponentiate(base, exponent) { return Math.pow(base, exponent); } module.exports = exponentiate;
sqrt.js: Un módulo para calcular la raíz cuadrada.
function sqrt(number) { return Math.sqrt(number); } module.exports = sqrt;
Agregué estos al archivo principal calculadora.js y ahora mi calculadora admitía operaciones extendidas:
const add = require('./addition'); const subtract = require('./subtraction'); const multiply = require('./multiplication'); const divide = require('./division'); const exponentiate = require('./exponentiation'); const sqrt = require('./sqrt'); console.log("Addition: 5 3 =", add(5, 3)); console.log("Subtraction: 5 - 3 =", subtract(5, 3)); console.log("Multiplication: 5 * 3 =", multiply(5, 3)); console.log("Division: 6 / 2 =", divide(6, 2)); console.log("Exponentiation: 2 ^ 3 =", exponentiate(2, 3)); console.log("Square root of 16 =", sqrt(16));
Al aplicar la teoría en la práctica, obtuve una mejor comprensión de cómo los módulos ayudan a organizar el código y lo fáciles que son de usar en Node.js. Trabajar con archivos separados para cada operación me hizo darme cuenta de la importancia de la modularidad y de cómo mejora la legibilidad y escalabilidad del código.
Esta experiencia me mostró lo crucial que es organizar el código adecuadamente, especialmente cuando un proyecto se vuelve más complejo. Ahora me siento seguro trabajando con módulos en Node.js y estoy listo para el siguiente paso en mi viaje de aprendizaje.
Para obtener más detalles sobre esta lección, puedes consultar el tutorial completo aquí.
Así es como aprendí del artículo y entendí cómo funcionan los módulos en Node.js a través de una aplicación práctica.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3