Node.js

Publicada en Publicada en Node.js

Compartelo con tus amigos!

Puedes tener alguna experiencia de desarrollo web, y tal vez has escrito código JavaScript. Puede que no sea obvio pero ¿Por qué alguien querría sacar JavaScript del navegador y usarlo para el desarrollo del lado del servidor?. Sin embargo, esto es exactamente lo que hace Node.js.

Lo que es más, Node.js ha estado alrededor por el tiempo suficiente para haber madurado como plataforma, y ha sostenido su impresionante crecimiento en popularidad mucho más allá de  cualquier período que podrá ser atribuido a la publicidad inicial sobre una nueva tecnología.

¿Por qué Node.js?

Node.js es todavía relativamente nuevo en comparación con plataformas como .Net, pero se ha vuelto muy popular en poco tiempo, e incluso ha empezado a influir en esta plataforma. Esto es gracias a su modelo de programación distintivo, a su amplio ecosistema y a sus potentes herramientas.

Estos factores hacen de Node.js una alternativa atractiva ante otras plataformas. Su modelo de programación distintivo puede parecer bastante ajeno en comparación con otras plataformas. La gama de librerías y herramientas disponibles puede ser desconcertante.

Ahora, entendamos lo que es.

¿Qué es Node.js?

Si nos dirigimos al website oficial de Node.js encontraremos la siguiente definición:

“Node.js® es un entorno de ejecución para JavaScript construido con el motor de JavaScript V8 de Chrome. Node.js usa un modelo de operaciones E/S sin bloqueo y orientado a eventos, que lo hace liviano y eficiente. El ecosistema de paquetes de Node.js, npm, es el ecosistema mas grande de librerías de código abierto en el mundo.”

¿Entonces?

Node.js consiste en un motor JavaScript junto con APIs de bajo nivel para la funcionalidad central del servidor.  El motor de ejecución es el mismo motor V8 desarrollado para el navegador Chrome. Node.js toma este motor y lo incrusta en una aplicación independiente que puede ejecutar JavaScript fuera del navegador.

En Node.js, las API estándar encontradas en los navegadores para admitir el desarrollo web del lado del cliente, como el modelo de objetos de documento (dom) y XMLHttpRequest, no están presentes. En su lugar, existen APIs para apoyar el desarrollo de aplicaciones de propósito general. Estas API principales cubren funcionalidades de bajo nivel, como las siguientes:

  • Networking and security
  • Accessing the file system
  • Defining and requiring modules
  • Raising and consuming events
  • Handling binary data streams
  • Compression
  • UTF-8 support
  • Retrieving basic information about the OS
  • Managing child processes

Algunas de estas API ya pueden estar familiarizadas con el desarrollo de JavaScript en el lado del cliente. Por ejemplo, la API de temporizadores expone las funciones conocidas de setTimeout y setInterval.

Node.js también proporciona varias herramientas para ayudar con el proceso de desarrollo. Estos incluyen el registro de la consola, la depuración, un bucle de lectura y evaluación (REPL) (o una consola interactiva) y las aserciones básicas para las pruebas.

¿Qué podemos hacer con Node.js?

Con Node.js podemos hacer aplicaciones web, aplicaciones de linea de comandos, aplicaciones de red, chats, y más, algunos casos reales los podemos ver en:

Algunos de los miembros de Node.js Fundation

Node.js definitivamente no es para todos los programadores, pero podría ser la respuesta adecuada para algunos, en las siguientes entradas veremos más acerca de Node.js.

Compartelo con tus amigos!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *