El blog de un programador...

Post Top Ad

The Relaxation Time

Travel the World!

Post Top Ad


Que tal amigos del blog, les dejo el tercer video del curso de nodejs, en el cual vamos a ver como crear modulos con el fin de evitar tener todo el codigo del servidor en un solo archivo, de esta forma tendremos nuestro codigo mas limpio y ordenado facilitando la lectura del mismo.



Les dejo la documentacion del video.-



Los módulos nos van a permitir tener una mejor organización de nuestro código, ya que podremos separar partes del servidor que nos sirvan para realizar una tarea en concreto en diferentes documentos y de esta forma evitar tener todo el código del server en un solo documento.


Crear un modulo:


Para crear un módulo debemos crear un nuevo documento y darle un nombre que sea referente a la funcionalidad del módulo a crear (es una buena práctica) y guardarlo con la extensión .js, lo podemos guardar en el root del proyecto (o crear un directorio para nuestros modulos).


Dentro del documento podremos declarar variables y funciones las cuales cuando el módulo sea requerido por nosotros se convertirán en propiedades y métodos del objeto creado al requerirlo.-


/* Módulo de ejemplo
ejemplo.js */


// Declaramos una propiedad
var nombre = "Paulo";


// Declaramos un método
function saludar()
{
   console.log("Hola");
}

Ahora solo faltaria exportar la propiedad y el método declarado en el módulo ejemplo.js para poder acceder a estos desde el documento que requiera el módulo.-


module.exports.nombre = nombre;
module.exports.saludar = saludar;
El código anterior se declara al final del módulo.

Incluir módulos propios:

Para incluir un módulo propio lo hacemos de igual forma  en cómo incluimos los módulos que vienen por defecto en nodejs, con la diferencia de indicar el path del módulo partiendo de ./ que indica el directorio principal del proyecto.-


// Incluimos el módulo ejemplo.js
var ejemplo = require("./ejemplo.js");


// Mostramos el contenido de la propiedad nombre
console.log( ejemplo.nombre );


// Llamamos al método saludar
ejemplo.saludar();

Ejemplo final del video.-



//server.js
var http = require("http"),
   urls = require("url"),
   router = require("./router.js"),
   rutas = require("./rutas.js"),
   port = 3000;

http.createServer(function (req, res){
   var url = urls.parse(req.url);
   var pathname = url.pathname;
   router.router(rutas.rutas, pathname, res);
}).listen(port);

console.log("Servidor corriendo en el puerto: "+port);

// router.js
function router(rutas, pathname, res)
{
   // Verificamos que la ruta a la que se va acceder este declarada en el objeto rutas
   if(typeof rutas[pathname] === "function"){
       // Si esta declarada ejecutamos la función asignada a la ruta return
       rutas[pathname](res);
   } else {
       res.writeHead(404, {"Content-type" : "text/html"});
       res.write("Error 404 Pagina no encontrada");
       res.end();
   }
}

module.exports.router = router;

// rutas.js
var rutas = {}; // Creamos el objeto rutas

// Agregamos las rutas al objeto
rutas["/"] = inicio;
rutas["/admin"] = admin;

function inicio(res)
{
   res.writeHead(200, {"Content-type" : "text/html"});
   res.write("Pagina de inicio");
   res.end();
}

function admin(res)
{
   res.writeHead(200,{"Content-type" : "text/html"});
   res.write("Pagina de administracion");
   res.end();
}

module.exports.rutas = rutas;

No hay comentarios:

Publicar un comentario

Comentar es agradecer!, tu comentario me ayuda a seguir mejorando el blog, gracias.

Post Top Ad