NodeJS , ¿qué es y por qué usarlo?

Quiénes están interesados en el desarrollo de aplicaciones web robustas y muy veloces les será de mucho interés conocer NodeJS. Aunque NodeJS no es para todos los programadores su increíble funcionalidad puede ser la respuesta que usted estaba buscando para realizar su proyecto de aplicación web de alto rendimiento.

¿Qués es NodeJS?

NodeJS es un intérprete JavaScript del lado del servidor que da un giro a la manera de programar del lado del servidor. El objetivo de NodeJS es permitir que el programador construya aplicaciones con una gran escalabilidad cuyo código maneje miles de conexiones simultaneas en una misma máquina.

Adicionalmente podemos decir que, NodeJS es básicamente un framework para implementar operaciones de entradas y salidas. Como lo muestra la página oficial de  NodeJS: «Node.js es una interfaz para el  tiempo de ejecución de JavaScript incorporado en el motor JavaScript V8 de Chrome . Node.js utiliza programación orientada a eventos, sin bloqueo de E / S, modelo que hace que sea ligero y eficiente».

Debe entenderse que NodeJS no es un servidor web, pues JavaScript es solo un lenguaje de programación que en sus inicios solo se usaba del lado del cliente, se ejecutaba en el navegador web, pero que ahora con el código que incorpora NodeJS revoluciona pues se ejecuta a nivel del servidor.

¿Qué tener en cuenta para iniciar a programar con NodeJS?

Pues son diferentes aspectos que los programadores que llevan usando este lenguaje han logrado obtener y que nuestros amigos de desarrolloweb.com nos comparten:

Si queremos entender esta plataforma, lo primero que debemos de hacer es desprendernos de varias ideas que los desarrolladores de Javascript hemos cristalizado a lo largo de los años que llevamos usando ese lenguaje. Para empezar, NodeJS se programa del lado del servidor, lo que indica que los procesos para el desarrollo de software en «Node» se realizan de una manera muy diferente que los de Javascript del lado del cliente.

De entre alguno de los conceptos que cambian al estar Node.JS del lado del servidor, está el asunto del «Cross Browser», que indica la necesidad en el lado del cliente de hacer código que se interprete bien en todos los navegadores. Cuando trabajamos con Node solamente necesitamos preocuparnos de que el código que escribas se ejecute correctamente en tu servidor. El problema mayor que quizás podamos encontrarnos a la hora de escribir código es hacerlo de calidad, pues con Javascript existe el habitual problema de producir lo que se llama «código espagueti», o código de mala calidad que luego es muy difícil de entender a simple vista y de mantener en el futuro.

Otras de las cosas que deberías tener en cuenta cuando trabajas con NodeJS, que veremos con detalle más adelante, son la programación asíncrona y la programación orientada a eventos, con la particularidad que los eventos en esta plataforma son orientados a cosas que suceden del lado del servidor y no del lado del cliente como los que conocemos anteriormente en Javascript «común».

Además, NodeJS implementa los protocolos de comunicaciones en redes más habituales, de los usados en Internet, como puede ser el HTTP, DNS, TLS, SSL, etc. Mención especial al protocolo SPDY, fácilmente implementado en Node, que ha sido desarrollado mayoritariamente por Google y que pretende modernizar el protocolo HTTP, creando un sistema de comunicaciones que es sensiblemente más rápido que el antiguo HTTP (apuntan un rendimiento 64% superior).

¿Quiénes usan NodeJS?

Existen varias ejemplos de éxito de empresas que usan NodeJS. El que lleva la delantera puede ser LinkedIn, que es una red social para  búsqueda de empleos y mantener contacto entre profesionales. Esto a beneficiado enormemente a LinkedIn pues de 30 servidores lo ha reducido a 3, sin duda un ahorro importante.

¿Por qué usar NodeJS?

Por su rendimiento y escalabilidad. NodeJS es veloz esto es de gran importancia para las aplicaciones que tienen gran afluencia de usuarios.

Permite la manipulaciones de datos de forma sencilla sin un gran cantidad de cálculos.

A diferencia de PHP, sin querer hacerle mala fama a este lenguaje de programación,  maneja miles de conexiones simultaneas en una misma máquina.

Es un buen momento de aprender NodeJS pues el API de esta no va a cambiar, continuará con la misma arquitectura. Así que no hay temor de que lo que aprendamos quede, después de un tiempo, desfasado.

Actualmente existen varios proyectos que tienen interés en el uso de NodeJS lo que demuestra que esta plataforma de desarrollo está alcanzado un buen grado de madurez. Algunos ejemplos de proyectos, basados en Node e  interesados en NodeJS son: Meteor JS, Grunt, Yeomar, etc.

 

Deja un comentario