Saltar al contenido
Portada » Node JS

Node JS

Node JS surge como una iniciativa de tener Javascript en el backend. Con este servidor podremos implementar programas Javascript que den servicio desde el back a nuestros frontales. Es código abierto y multiplataforma.

Destaca su gran eficiencia ya que corre sobre el motor Javascript de Chrome. Se lanza un único proceso y utiliza directivas de I/O (acceso a BBDD, leer de la red, sistema de ficheros, etc) asíncronas para evitar bloqueos. De esta forma puede manejar sesiones concurrentes sin necesidad de lanzar múltiples hilos.

Pueden usarse los estándares de ECMAScript y decidir que versión usar.

Descarga

mklji

NodeJS disponible para todas las plataformas. Puedes elegir entre un instalador pre-compilado o el código fuente completo.

Tipo de FicheroEjecutable o Comprimido
PlataformaWindows, macOS, Linux
DescargaDescargar

NPM

La estructura de npm te da acceso a miles de librerias para su descarga. De esta forma puedes extender el funcionamiento de NodeJS para hacerte la vida más fácil a la hora de crear aplicaciones web por ejemplo. Más adelante comentaremos algunos de los Frameworks más importantes descargables mediante NPM.

Hola Mundo

Típico programa de “Hola Mundo” que nos muestra un ejemplo básico de aplicación escrita sobre NodeJS:

const http = require('http')

const host = '127.0.0.1'
const puerto = 8000

const server = http.createServer((req, res) => {
  res.statusCode = 200
  res.setHeader('Content-Type', 'text/plain')
  res.end('Hola Mundo\n')
})

server.listen(puerto, host, () => {
  console.log(`Servidor levantado en http://${host}:${port}/`)
})

Mejores frameworks y herramientas para Node JS

  • AdonisJS: Framework para desarrollar aplicaciones web enfocado en la estabilidad y la confianza del desarrollador, basado el TypeScript.
  • Egg.js: Basado en Node.js & Koa.
  • Express: Proporciona una de las formas más simples de implementar un servidor web.
  • Fastify: Para desarrollar de forma rápida y estable aplicaciones web.
  • FeatherJS: Desarrolla de manera ágil APIs REST usando directamente TypeScript o Javascript. Puedes tener levantados en cuestión de minutos los prototipos.

Bucle de Eventos en Node JS

El bucle de eventos es el que permite a Node JS ejecutar operaciones I/O no bloqueantes.

Cuando arranca NodeJS se inicializa el bucle de eventos, cada fase del bucle consta de una cola FIFO de llamadas para ejecutarse. Las fases son las siguientes:

  • timers: Esta fase ejecuta las llamadas planificadas por setTimeout() y setInterval().
  • pending callbacks: Ejecuta las llamadas I/O diferidas a la siguiente iteración.
  • idle, prepare: uso interno.
  • poll: retrieve new I/O events; execute I/O related callbacks (almost all with the exception of close callbacks, the ones scheduled by timers, and setImmediate()); node will block here when appropriate.
  • checkSe invocan las llamadas en setImmediate().
  • close callbacks: Cierre de algunas llamadas, por ejemplo: socket.on('close', ...).


Más recursos backend JS

Node JSJS en backend, código abierto y multiplataforma
Nest JSMontado sobre Node, soporta typescript, escribe aplicaciones rápidamente de forma escalable
Express JSSe despliega sobre Node, gestión de direccionamiento y soporte completo para montar un servidor
Node JS con MongoDBTe mostramos un ejemplo para conectar NodeJS con la base de datos NoSQL MongoDB

Recursos básicos JS

PrototypeAñadir propiedades de forma dinámica a un objeto
toLocaleStringHerramienta esencial para el formateo de fechas y números en aplicaciones internacionales
Recursividad y pilaUso de recursividad y funcionamiento de la pila JS
DesestructuraciónMecanismo para desempaquetar arrays y objetos
Manejo de StringsManejo básico de Strings, cadenas de caracteres
OperadoresUso de operadores de comparación y lógicos
PromesasGestión de peticiones asíncronas con promesas
SleepImplementación de la función sleep() en JS
ThisUso de la palabra reservada this en diferentes contextos
MapsTe enseñamos cuando usar Map y cuando Object con ejemplos
Switchery JSLibrería para modificar el estilo de los checkbox
Mejores libros Javascript EspañolEncuentra los mejores libros para aprender JS y convertirte en el desarrollador más demandado.
Exception JSManejo de excepciones en Javascript, control de errores y flujo de programa.
Obfuscator JavascriptProtege tu código Javascript Ofuscándolo
Javascript desde ceroAprende los conceptos básicos de Javascript, ponte en marcha.
LodashLodash hace que la manipulación de datos en JavaScript sea más fácil y menos propensa a errores
Formatdate JSFormateo y trabajo con fechas en javascript de forma sencilla.
DayjsBiblioteca para la gestión de fechas
padStartManeja cadenas de texto con la función padStart()