Module System

Clase 20 de 28Curso para Certificacion de Node.js con OpenJS Foundation 2023

Resumen

Domina el modulesystem de Node.js para la certificación: entiende las diferencias entre CommonJS y Image Script Modules (EMS), consulta la documentación correcta en el core y aplica la Require API para imprimir rutas de carga. Con un enfoque práctico, verás por qué CommonJS suele ser más simple para resolver ejercicios y cuándo te exigirán usarlo.

Modulesystem en Node.js: CommonJS, Image Script Modules y Require API

¿Qué evalúa el modulesystem en Node.js?

El dominio pesa 7 % en la prueba y cubre el sistema de módulos de Node.js. Debes conocer los dos enfoques: CommonJS, sistema original y nativo, y Image Script Modules (EMS), añadidos recientemente al core. La certificación es anterior a estos cambios, por eso hay actualizaciones que considerar.

  • Entiende la diferencia entre CommonJS y EMS.
  • Revisa la documentación oficial del core para ambos sistemas.
  • Prioriza CommonJS cuando sea posible: suele ser más fácil y natural de implementar.
  • Identifica que hay dos ítems: task diez punto uno y task diez punto dos.

¿Cómo resolver el task 10.x con require api?

El reto pide que el archivo answer.js sea un módulo CommonJS ejecutado como script principal y que, usando la Require API, imprima en consola todas las rutas disponibles para requerir módulos. La nota es clara: es una pregunta solo de CommonJS, no admite enfoque con Image Script Modules.

Pasos sugeridos. - Abrir el README y confirmar los requisitos del task. - Asegurar que answer.js corre como el script principal: se evalúa con CommonJS. - Usar el objeto require.main y su propiedad paths para obtener las rutas. - Imprimir el arreglo con console.log. - Ejecutar con node answer y verificar la salida.

Ejemplo mínimo en answer.js:

console.log(require.main.paths);

Claves técnicas que debes reconocer. - Require API: provee métodos y propiedades útiles para módulos en CommonJS. - require.main: representa el script cargado al lanzar Node.js como principal. - require.main.paths: arreglo con rutas donde se pueden resolver módulos.

¿Cuál es la diferencia práctica entre commonjs y image script modules?

Necesitas distinguir ambos modelos y cuándo aplicarlos. En ejercicios similares, pueden obligarte a CommonJS o permitir EMS. La recomendación es clara: si tienes opción, céntrate en CommonJS.

  • CommonJS: sistema original de módulos en Node.js.
  • Image Script Modules (EMS): añadidos al core en versiones recientes.
  • Algunas preguntas exigen CommonJS de forma explícita.
  • Revisa el API del core de Node.js según el sistema requerido.
  • También se menciona ES6M junto a CommonJS: debes conocer ambos enfoques.

¿Te quedan dudas o quieres compartir cómo implementaste require.main.paths en tu task? Deja tu comentario y conversemos sobre tu solución.