Node.js es la nueva tecnología de la que muchos están hablando. Un usual error que me llevó a profundizar en esto es la terminación de js como si se tratara de otra librería javascript para manejar datos, eventos y objetos dentro del navegador.
Node.js NO es una tecnología de la parte cliente. Es una tecnología del servidor como php, Solo que a diferencia de este no necesita de un servidor apache sino que el mismo Node es el creador del servidor en si.
cómo?
Vamos por el principio: Por qué elegí OSX como SO? porque me va bien trabajar en Mac. y Node no es una tecnología muy afin al entorno windows. De hecho en sus anteriores versiones no corría bajo el Sistema de Microsoft. Hasta hace no mucho, solo podías verlo en OS X y Linux.
Nos descargamos el PKG de aca y lo instalamos como si fuera otro programa. No hay nada de diferente esta instancia del proceso.
Notarás que una vez instalado no lo vas a encontrar en la típica carpeta de Applications. Sino que se encuentra en /usr/local/bin/node.
Olvidate ahora de los entornos visuales. Es hora de usar la consola.
La consola: un nuevo aliado.
Vas al Spotlight del Sistema y tipeá “Terminal”. Abrís esto y ya tenés la consola andando. Si estás leyendo esto seguramente no estás familiarizado. Desde la consola se maneja todo el sistema Operativo con la sintaxis de Unix. Esto aunque no creas tiene numerosas ventajas.
La ventana en cuestión no es muy amigable. He trabajado en Linux un tiempo y me familiaricé con con la consola y fundamentalmente con el Guake (http://guake.org/) que es un emulador de consola que funciona en full screen, y de una manera muy interesante a nivel de experiencia de usuario. Su transparencia nos permite ver las ventanas que están detrás (siempre quedarán atrás). Buscando algo parecido para Mac me encontré con el Total Terminal Un emulador de consola bastante más amigable. Me encantó.
Al abrir la consola, te vas a encontrar que estás en la carpeta raiz, que es el lugar desde donde siempre arranca la consola. El directorio es /Users/[nombre-de-usuario]
Nuestro objetivo es crear un proyecto Node.js muy sencillo y luego testearlo, asi que antes vamos aprender una serie de comandos útiles para esto.
Algunos comandos interesantes para usar en la consola
- donde estoy?:
- pwd:va a devolverte el directorio en el que te encontrás
- subir un nivel, cambiar de carpetas
- cd .., cd nombre de carpeta:la abreviación de “change directory”. y de eso se trata: de cambiar de directorios
- crear un directorio
- mkdir [nombre del directorio] de esta manera creamos un directorio en la carpeta en que estemos parados
- crear un archivo:
- touch [nombre-del-archivo.js]: De esa manera estamos creando el archivo a editar
- abrir un archivo:
- open [nombre-del-archivo.js]: Asi se abrirá el archivo js que hayamos creado con el editor de código que tenemos por defecto para editar javascript
Claramente podemos hacer esto por el S.O. tal como lo conocemos, pero me parece interesante para poder familiarizarse con el entorno y la consola.
Creando nuestra primera aplicación
Bien, ahora vamos a escribir algo de JS. Notarás que es la misma sintaxis del javascript para navegadores tal como lo conocíamos, pero con una serie de objetos y funciones que nunca abríamos usado antes.
este ejemplo es bien conocido y puede encontrarse en mucho de los sitios útiles que están al final del articulo:
var http = require("http");
var elservidor = function(request, response) {
response.writeHead(200, {"Content-Type": "text/html"});
response.write("Hola Mundo");
response.end();
}
http.createServer(elservidor).listen(8888);
Es bien sencillo: como dijimos antes, con Node.js creamos es el servidor completo y eso es lo que hemos hecho: la variable http es un módulo que viene en la instalación por defecto de Node.js (ya veremos más adelante de que se trata el fascinante mundo de los módulos. Luego creamos la función “elservidor” con los parámetros de request y response y es la función que crea el contenido html. Luego, el http que creamos, tiene un método “createServer” que crea el servidor, y otro método “listen” que asigna el puerto, en este caso 8888
Vamos a la consola y allí tipeamos “node [nombre-del-archivo.js]”. Sino nos devuelve ningún error, eso significa que la app está funcionando. Para testearla, abrimos una ventana del navegador y allí vamos a localhost:8888
Ahi encontraremos el mensaje “hola Mundo”. Emocionante verdad? ya veremos en siguientes tutoriales que más podemos hacer con esto.
Comments are closed.