Proyecto Hola Usuario

Descripción

  • Realizar un programa que escriba en un fichero el texto siguiente:

    Hola usuario, tienes 25 años
    • Usuario se obtendrá de la variable de entorno

      $USERNAME
    • La edad se obtendrá de una variable

Objetivos

  • Entender el funcionamiento de los módulos

    • Utilizar módulos del núcleo (os, fs)

    • Crear un módulo sencillo

  • Usar sintaxis de ES6 (destructuring y template string)

Comenzar proyecto

mkdir holaUsuario
cd holaUsuario
touch app.js
code .

Añadir texto a un fichero

  • Función asíncrona:

  • Salida con warning:

  • ¡Recoger error o éxito con función de callback para evitar warning!

  • Podríamos utilizar también una función síncrona:

Obtener el nombre del usuario

  • Utilizaremos el módulo OS para averiguar el nombre del usuario

Implementación ES5

ES6: Destructuring

  • Mapeamos una o varias partes de un objeto a una o varias variables:

ES6: Template Strings

ES6: Object Literal Property Value Shorthand

  • Antes (ES5):

  • Ahora (ES6):

Implementación ES6

Uso de módulos

  • Vamos a crear un módulo que sea el encargado de proporcionarnos el usuario

  • Creamos el fichero user.js con el siguiente texto:

  • ¿Cómo lo cargamos dentro de nuestro app.js?

  • Comprobamos la ejecución que muestra el texto del módulo requerido por consola.

Uso de variables y funciones de otro módulo en node

  • El objeto module tiene muchas propiedades, nos interesará module.exports

  • module.exports puede ser una función, un objeto, un string...

  • Será ahí donde tendremos que crear un objeto con el nombre del usuario y la edad.

Solución proyecto

  • Fichero app.js:

  • Módulo user.js:

Ejercicio carga módulos

  • ¿Qué mostraría el siguiente programa?

  • ¿Y si comentamos la primera línea de app.js?

app.js:

module1.js:

module2.js:

Salida ejercicio

  • El texto Ejecutando módulo 1 se muestra solo una vez

    • Ya está cargado previamente, se usa la caché y no se ejecuta

    • El texto Inicializando app sale después del console.log de los require (los require son síncronos).

Ejercicio leer ficheros

  • Crea dos ficheros numero1.txt y numero2.txt y escribe un número en cada uno

  • Crea un programa que:

    • Lea el contenido de los dos fichero y lo almacene en variables

    • Muestre por consola la suma de las variables

Solución lectura ficheros

Last updated

Was this helpful?