Como instalar Node.js y escribir primeros programas Blog
Likes: 1 Persona
Comentarios: 0
Publicado: 01/08/2013
La semana pasada mostré como compilar el V8 en tu propio ordenador o computadora, te recomiendo hacerlo para poder instalar Node.JS sin problemas, el día de hoy mostraré como instalar Node.js y además como iniciar a escribir algunos programas sencillos.
Acerca de Node.js
El objetivo de Node.js es proveer una manera sencilla para desarrollar aplicaciones escalables de alto rendimiento, ya que Node no funciona como la mayoría de los servidores tradicionales, Node no crea hilos para cada petición o cliente sino que usa un sistema de "callbacks". Para conocer más al respecto recomiendo ir al sitio oficial y leer la documentación, también les recomiendo ver el video donde Ryan Dahl da una introducción a Node.js.Pre requisitos
Para poder compilar el código necesitaremos las siguientes herramientas, si seguiste el tutorial de la semana pasada seguramente ya las tendrás instaladas:- Python 2.4 o superior
- V8 – El engine de JavaScript (Viene con la distribución que descargaremos adelante)
Descargar una versión estable
Para descargar la última versión estable lo podemos hacer desde la página oficial, al día de hoy la versión que descargaré es la 0.2.6.Compilar Node.js
Compilar Node es muy sencillo, solamente se requiere ejecutar los siguientes comandos dentro del directorio que has descargado:$ ./configure $ make $ make installAl ejecutar esos comandos debería darte un mensaje de éxito y ahora estás listo para iniciar a escribir tus primeros programas.
Primeros programas
Voy a mostrar algunos programas muy sencillos, primero escribiré el famoso "Hola mundo" para no perder la costumbre.var sys = require("sys"); sys.puts("Hello world!"); console.log("Hi again!!");Guardamos ese programa en un archivo llamado hello.js, para ejecutarlo ejecutamos el siguiente comando:
$ node hello.jsCon eso podremos ver el mensaje escrito en la consola. Ahora escribiré un programa que solicite mi nombre y me de la bienvenida, con esto veremos el concepto de callbacks al cual estamos acostumbrados al utilizar ExtJS.
var sys = require("sys"); sys.puts("What's your name?"); var stdin = process.openStdin(); stdin.on("data",function(buffer){ console.log("Hi "+buffer.toString()+", welcome to Node.js!"); process.exit(); //fin del programa }); console.log("last line of code!");En este programa vemos algo muy interesante en la manera como funciona Node, y es que debemos entender que Node se ejecuta de manera asíncrona, esto queda demostrado cuando abrimos la entrada de texto desde la consola no se queda bloqueado en esa linea hasta que el usuario entre una secuencia de caracteres, lo que hace es continuar ejecutando el código siguiente agregando un listener e imprimiendo la última línea del programa, cuando el usuario introduce algún texto se ejecuta el callback e imprime el mensaje de bienvenida y termina el programa. El último ejemplo que mostraré es como crear un servidor web que escuche al puerto 8080 y responda las peticiones con un mensaje.
var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World\n'); }).listen(8080); console.log('Server listen to the port 8080');Ejecutas el archivo que contiene el código y luego en tu navegador favorito abres la url "http://localhost:8080" y podrás ver la respuesta del servidor. Es importante mencionar que a este punto no tenemos un sistema de ruteamiento, ni sesiones, ni podemos servir archivos estáticos (html, js, images, etc...), este servidor que escribimos es muy primitivo pero es el punto de entrada.
17Comentarios
increible :D
ummm Realmente no me queda claro que es Node.js, he investigado e internet pero aun no aterrizo, podrias explicarlo con tus propias palabras que es node.js y que diferencia hay con apache o con javascript? saludos y gracias.
Node JS es como un negrote que te puede atravesar el culo, a diferencia de los apaches es robusto.
En cortas palabras Node.JS es un V8 con muchas más API's para hacer operaciones IO, acceso a disco, Sockets, etc... podemos escribir un Servidor Web o simplemente programas que se ejecuten con JavaScript del lado del servidor o en una terminal.
Muy bueno, sí señor. ¿Para cuándo el tutorial de WebSockets?
muy Interesante e importante.... Saludos
http://net.tutsplus.com/tutorials/javascript-ajax/learning-serverside-javascript-with-node-js/ ..aqui hay unos ejercicios muy interesantes tambien... (ademas de la Wiki de Node.js) Saludos
Se puede decir que Node.js es como decir un C pero en JavaScript para poder trabajar fuera del navegador?
Excelente articulo, por estos días he estado mirando varia información sobre Node.Js, Websockets, Comet y Reverse Ajax, tanto ejemplos como documentación y resultados de rendimiento para estas tecnologías. La idea de todo esto es poder implementar un chat basado en Node.Js integrado con ExtJs donde el servidor sea quién envíe las respuestas al cliente cuando ocurra un evento y no al contrario como normalmente lo haríamos con Ajax. Me gustaría saber si se publicarán más tutoriales sobre este tema o si alguien está interesado en conformar un grupo de trabajo para llevar a cabo esta idea. Saludos!!
Oye y cuando en windows de eso casi no hay nada
Si ejecuta codigo del lado del servidor, ¡como se instala en un servidor web (hosting)?
Ya lo instale en Mac OSX, hice pruebas y todo bien, pero reinicié el server y no arrancó, como lo arranco de nuevo.
excelente, gracias
Yo tambien quiero aprender y dar mi aporte a la comunidad
Muy buena aportación, gracias.
para hacer el bots con node.js cual carpeta descargo <
Hey I'm new to here It is magnificent! Please will you check out my site and give me a ranking on my responses: 8 Ball Pool Mod Thankyou.