Iniciando aplicación con Nodejs

Para comenzar nuestra aplicación Nodejs, debemos crear el directorio de proyecto con el nombre que desee, luego a través de nuestro terminal ir a la raíz de nuestro proyecto. Una vez en la raíz creamos nuestro primer archivo app.js:

$ touch app.js

Ahora vamos a añadir el siguiente código dentro de app.js :

const http = require('http')
const port = 3000

const server = http.createServer((request, response) => {
  response.writeHead(200, {'Content-Type' : 'text/html'})
  response.end('Hello Nodejs')
})

server.listen(3000, () => {
  console.log(`Nodejs running on PORT ${port}`)
})

Para ejecutar nuestra aplicacion Nodejs, atravez del termina ejecutamos el siguiente comando:

$ node app.js

Modulos (Modules)

Nodejs utiliza un sistema modular, cada módulo representa un bloque de códigos el cual podemos integrar a nuestra aplicación. Para integrar módulos a nuestro proyecto utilizamos la función require .

const http = require('http')

Crear tu propio modulo

Podemos crear nuestro propio módulo creando un archivo nuevo y utilizando palabra reservada exports , creamos el archivo greeting.js y incluimos el siguiente código:

const currentDate = new Date()
module.exports.date = currentDate

module.exports.getMessage = (name) => {
  const hour = currentDate.getHours()

  if(hour > 16) {
    return `Good evening, ${name}`
  }
  else if(hour > 10) {
    return `Good afternoon, ${name}`
  }
  else {
    return `Good morning, ${name}`
  }
}

Para integrar el modulo creado utilizamos la palabra reservada require

const greeting = require('./greeting')

Como resultado final tendremos el siguiente código en app.js

const http = require('http')
const greeting = require('./greeting')
const port = 3000

const server = http.createServer((request, response) => {
  const greet = greeting.getMessage('John')

  response.writeHead(200, {'Content-Type' : 'text/html'})
  response.end(greet)
})

server.listen(3000, () => {
  console.log(`Nodejs running on PORT ${port}`)
})

Definindo constructores y objetos dentro de módulos

En adición de definir simple funciones y propiedades, dentro de modulos podemos definir objetos mas complejo y luego utilizarlos por medio de constructores. Para el próximo ejemplo creamos el archivo user.js

function User(name, age) {
  this.name = name
  this.age = age
  this.displayInfo = function() {
    return `Name: ${this.name} Age: ${this.age}`
  }
}

User.prototype.sayHi = function() {
  return `Hello my name is ${this.name}`
}

module.exports = User

Como resultado final tendremos el siguiente código en app.js

const http = require('http')
const User = require('./user')
const port = 3000

const server = http.createServer((request, response) => {
  const john = new User("John", 32)

  response.writeHead(200, {'Content-Type' : 'text/html'})
  response.end(john.sayHi())
})

server.listen(3000, () => {
  console.log(`Nodejs running on PORT ${port}`)
})

Objetos globales

Nodejs contiene múltiples variables el cual podemos acceder dentro de cualquiera de los módulos de Nodejs, todos estos objetos están atados a una variable llamada global , similar a la variable global window el cual encontramos en el navegador, esta contiene métodos relacionado a procesos o otras propiedades de la aplicación. A estos objetos atados a la variable global le llamamos objetos globales. Dentro de estos objetos se encuentra las siguientes variables:

process

Provee interaccion al momento de ejecucion de los proceso de Nodejs.

require

Funcion que nos permite integrar libreria o codigos de externos.

module y module.exports

Nos permite exportar código para que pueda ser utilizado.

setTimeout y setInterval

Misma funciones encontrada en el navegador.

__dirname y __filename

Nos devuelve camino absoluto a directorios o archivos.

Añadir librerías de tercero

Existen módulos creados por tercero el cual podemos incluir a nuestra aplicacion Nodejs, estos módulos pueden ser integrados a nuestra aplicación utilizando NPM, NPM es una pequeña aplicación que nos permite manejar módulos o paquete. Para comenzar con NPM en el proyecto. Debemos navegar atraves de nuestro terminal, ir a la raíz de nuestro proyecto. Una vez en la raíz iniciamos nuestro directorio de aplicación con:

$ npm init

Luego de llenar nuestra informacion al proyecto y iniciarlo, vamos a añadir los paquetes necesario para nuestra aplicacion.

$ npm -i -save express

results matching ""

    No results matching ""