[MÚSICA]
En esta lección, aprenderemos cómo podemos escribir notificaciones simples.
También aprenderemos acerca de los módulos de
nodo y cómo los módulos de nodo nos permiten organizar nuestras aplicaciones en varios archivos.
También aprenderemos sobre los diferentes tipos de módulos Node y
cómo podemos importar módulos Node en nuestros archivos de nuestra aplicación Node y
hacer uso de ellos dentro de nuestra aplicación.
Primero, vamos a aprender acerca de los módulos de Node con un poco más de detalle en esta conferencia.
JavaScript, cuando se
diseñó por primera vez estaba destinado a ser un lenguaje de scripting para ser utilizado dentro del navegador.
Así que el pequeño reino dentro del cual se suponía que debía ser utilizado es el navegador.
Ahora, como usted entiende por esta especialización, JavaScript ha ido
mucho más allá de su intención original, y ahora se está utilizando para escribir aplicaciones.
Tanto para ejecutarse usando frameworks dentro del navegador, como
también para ejecutar aplicaciones en el lado del servidor, como veremos en este curso.
JavaScript originalmente nunca se diseñó con ninguna biblioteca común.
Si nos fijamos en lenguajes de programación estándar como C, C ++, Java, etc.,
todos tienen bibliotecas estándar que le permiten acceder
al hardware subyacente.
Y también proporcionar una forma estructurada de organización de la aplicación en
varios archivos y luego combinarlos juntos cuando se crea una aplicación.
JavaScript nunca tuvo este soporte cuando comenzó.
Porque como entendemos, JavaScript no fue diseñado para
el propósito para el que se está utilizando hoy en día.
Pero, por supuesto, la
gente entiende las dificultades cuando necesita expandir JavaScript
más allá de un solo archivo que se utiliza como lenguaje de scripting para el navegador.
Ahora, si tiene una aplicación JavaScript muy grande,
se vuelve engorroso escribir todo el código en un solo archivo.
Y, obviamente, desea que los resultados puedan dividir su aplicación en
múltiples hechos.
Ahora, a diferencia de los lenguajes de programación tradicionales, JavaScript nunca tuvo una forma
de distribuir el código en varios archivos y luego combinarlos.
Entonces, aquí es donde entró la API CommonJS para llenar este
vacío que llena las necesidades de alguna aplicación común.
Y este formato CommonJS define un formato de módulo que se puede utilizar para
dividir su aplicación JavaScript en varios archivos.
Y Node adopta ese formato CommonJS para
organizar nuestra aplicación JavaScript en múltiples archivos.
Y dentro de JavaScript, con el formato CommonJS,
cada archivo se convierte en su propio módulo Node.
Así que vamos a aprender un poco más sobre los módulos de Node en el resto de esta conferencia.
Entonces, como acabo de mencionar,
cada archivo en una aplicación de Node se convierte en su propio módulo de Node.
Entonces, el archivo o el archivo JavaScript define el límite para un módulo Node.
Entonces, dentro de ese archivo, la especificación CommonJS
proporciona una variable llamada la variable del módulo que es un objeto JavaScript.
Y esto le da acceso a la definición actual del módulo dentro de un archivo.
Y en este objeto de módulo, tiene la
propiedad module.exports que determina la exportación del módulo actual.
Entonces, cuando asigna algo a la propiedad module.exports,
entonces eso se convierte en el valor exportado del módulo actual.
De modo que cuando este módulo se importa en otro archivo
de nuestra aplicación Node, entonces todo lo que se exporte desde este módulo
estará disponible en la segunda aplicación.
Vamos a ver un ejemplo en breve.
Cuando necesita importar un módulo a otro módulo,
aquí es donde se utiliza la función require para importar el módulo.
Así como notaremos en poco tiempo, la función require se utiliza
para importar un módulo de nodo que se define en otro archivo en el archivo actual para
que pueda ser utilizado dentro de nuestra aplicación de nodo.
Los módulos de nodo pueden ser de tres categorías.
Tenemos módulos Nodo basados en archivos donde definimos el módulo Nodo dentro de un archivo,
dentro de nuestra aplicación y hacemos uso de él dentro de nuestra aplicación.
Entonces, tenemos módulos centrales que ya son parte de Node.
Los diseñadores de nodos mantuvieron estos módulos centrales intencionalmente pequeños para
que el nodo se pueda mantener pequeño.
Y también proporcionan suficiente funcionalidad para
que los diseñadores de módulos externos puedan agregar en su propia
funcionalidad que se puede aprovechar cuando desarrollamos aplicaciones de Node.
Entonces, los módulos principales incluyen ruta, sistema de archivos, sistema operativo, util y algunos otros.
Nos encontraremos con algunos de ellos a medida que avancemos en este curso.
Entonces tenemos módulos Node externos.
Estos son módulos de nodos de terceros desarrollados por los desarrolladores de nodos y, a
continuación, disponibles a través del ecosistema de nodos.
Por lo tanto, estos módulos nodos externos se pueden instalar dentro de nuestro sistema usando NPM.
Tantas veces nos verías usando NPM install y
el nombre del módulo Node y que se incluirá dentro de
nuestra aplicación Node en una carpeta llamada node_modules folder.
Y nos encontraremos con módulos nodos externos en una lección posterior de este curso.
¿ Cómo hacemos uso de los módulos Node?
Cuando necesite usar un módulo de nodo dentro de otro archivo de nodo dentro de su aplicación,
entonces usaría la función require.
Mencioné brevemente sobre la función de requerir en una de las
diapositivas anteriores allí.
La función de requerir para los módulos de nodo basados en archivos,
especificará esto según sea necesario y
luego especificará la ruta al archivo que contiene el módulo Node.
Así que dirías necesario./, el nombre del módulo si el archivo existe
en la carpeta actual escrita que existe su aplicación Node.
Así que esto especifica la ruta relativa al archivo desde la ubicación actual.
Y también para los módulos centrales y externos,
normalmente los especificaría diciendo require y el nombre del módulo.
Se especificaría explícitamente una ruta para ella.
Si se trata de un módulo central, ya es parte de Node y por
lo tanto se incluirá automáticamente.
Si se trata de un módulo externo, entonces se instalará dentro de
la carpeta node_modules en la carpeta actual, o si el nodo no
encuentra el módulo externo dentro de la carpeta node_modules en la carpeta actual,
subirá a la siguiente carpeta de nivel superior buscando ese módulo de nodo.
O la siguiente carpeta de nivel superior y
arriba de la jerarquía hasta que localice los módulos de nodo que
luego se importarán para ser utilizados dentro de su aplicación Node.
Si no puede encontrar el módulo Node en la jerarquía,
entonces obviamente generará un error diciendo que falta el módulo Node.
Esta forma de organización es muy útil en la forma en que
se define la estructura de la aplicación de Nodo, ya que encontraremos
más en la parte posterior de este curso.
Con esta rápida introducción a los módulos Node, echemos un vistazo a un ejemplo
que haremos como parte del ejercicio que sigue a esta conferencia.
Como aprendimos en esta conferencia, el
límite de un módulo de nodo está definido por el archivo que contiene el código aquí.
Entonces, aquí, tengo un ejemplo de un módulo de nodo definido como rectangle.js.
Y allí se puede ver que estoy usando dos exportaciones aquí,
estoy diciendo exports.perímetro y exports.area.
Y verá que aquí no estoy usando module.exports porque las exportaciones en
sí también es una versión abreviada de module.exports.
Entonces, si no desea usar module.exports completamente,
sino que solo quiere exportar, entonces esta es otra forma de escribir
aquellos elementos que se exportan desde los módulos de Node actuales.
Así que aquí estamos exportando dos funciones, el perímetro y
el área desde el módulo Nodo rectángulo.
Ahora, para hacer uso de este módulo en otro archivo
, echemos un vistazo al archivo index.js.
Y la primera línea en este archivo notará que dice
var rect = requerir y entre comillas,. /rectángulo.
Así que esto está especificando que el módulo rectángulo va a ser importante aquí,
hice uso de dentro de este archivo particular de la aplicación.
Así que así es como definiríamos los módulos de nodo, y
este es un ejemplo de un módulo de nodo basado en archivos.
Encontraremos el núcleo y
los módulos Nodo externos en lecciones posteriores de este curso.
[ MÚSICA]