Node.js 22 has arrived

Posted by

Introducción a Node.js

Node.js es un entorno de ejecución de JavaScript que utiliza un motor de JavaScript basado en Chrome V8. Permite ejecutar código JavaScript en el servidor, lo que le permite construir aplicaciones de red escalables y de alto rendimiento. Node.js ha ganado mucha popularidad en los últimos años debido a su facilidad de uso y su capacidad para manejar grandes cantidades de tráfico web.

En este tutorial, aprenderemos cómo instalar y comenzar a usar Node.js en su sistema. También discutiremos algunos conceptos básicos sobre cómo funciona Node.js y cómo puede utilizarlo para construir aplicaciones web.

Instalación de Node.js

Para comenzar a usar Node.js, primero debemos instalarlo en nuestro sistema. Node.js se puede instalar en Windows, Mac OS y Linux. A continuación, se detallan los pasos para instalar Node.js en diferentes sistemas operativos.

Windows

  1. Descargue el instalador de Node.js desde el sitio web oficial de Node.js: https://nodejs.org/es/
  2. Ejecute el instalador y siga las instrucciones en pantalla para completar la instalación.
  3. Una vez que se haya completado la instalación, abra el símbolo del sistema y ejecute el siguiente comando para verificar que Node.js se haya instalado correctamente:
node --version

Mac OS

  1. Instale Homebrew en su sistema si aún no lo ha hecho. Puede encontrar instrucciones sobre cómo instalar Homebrew en el sitio web oficial: https://brew.sh/
  2. Abra la terminal y ejecute el siguiente comando para instalar Node.js usando Homebrew:
brew install node
  1. Una vez que se haya completado la instalación, ejecute el siguiente comando para verificar que Node.js se haya instalado correctamente:
node --version

Linux

  1. Ejecute los siguientes comandos en la terminal para instalar Node.js en sistemas basados en Debian/Ubuntu:
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
  1. Para sistemas basados en CentOS/RHEL, ejecute los siguientes comandos en la terminal:
curl -sL https://rpm.nodesource.com/setup_14.x | sudo -E bash -
sudo yum install -y nodejs
  1. Una vez que se haya completado la instalación, ejecute el siguiente comando para verificar que Node.js se haya instalado correctamente:
node --version

Conceptos básicos de Node.js

Ahora que hemos instalado Node.js en nuestro sistema, es hora de explorar algunos conceptos básicos sobre cómo funciona Node.js y cómo podemos comenzar a usarlo para construir aplicaciones web.

Módulos

En Node.js, todo se basa en módulos. Un módulo es un archivo JavaScript que contiene una o más funciones o variables y se puede exportar para que otras partes de la aplicación puedan utilizarlo. Para cargar un módulo en Node.js, utilizamos la función require().

Por ejemplo, supongamos que tenemos un módulo llamado utils.js que contiene una función de utilidad. Para cargar este módulo en otro archivo JavaScript, podemos hacer lo siguiente:

const utils = require('./utils');

En este caso, ./utils hace referencia al archivo utils.js en el mismo directorio que el archivo JavaScript actual.

Callbacks

Node.js es de naturaleza asincrónica, lo que significa que no bloquea el hilo principal, permitiendo que el programa continúe ejecutándose mientras se realizan operaciones costosas, como la lectura de archivos o la solicitud de HTTP. Para manejar la asincronía en Node.js, utilizamos callbacks.

Un callback es una función que se pasa como argumento a otra función y se ejecuta después de que se complete una operación asincrónica. Por ejemplo, en una solicitud HTTP, podemos pasar una función de callback que maneje la respuesta de la solicitud:

const https = require('https');

https.get('https://example.com', (res) => {
  // Manejar la respuesta de la solicitud aquí
});

Eventos

Node.js utiliza el módulo events para trabajar con eventos. Un evento es una señal emitida por un objeto que puede ser escuchada y respondida por otros objetos. Para emitir y escuchar eventos en Node.js, utilizamos la clase EventEmitter.

Por ejemplo, para crear un objeto que emita un evento personalizado, podemos hacer lo siguiente:

const { EventEmitter } = require('events');
const myEmitter = new EventEmitter();

myEmitter.on('event', () => {
  console.log('Evento emitido');
});

myEmitter.emit('event');

En este caso, el objeto myEmitter emite un evento llamado event cada vez que se llama al método emit(), y la función de callback se activará para responder al evento.

Creación de una aplicación web simple con Node.js

Ahora que comprendemos los conceptos básicos de Node.js, podemos comenzar a construir una aplicación web simple con Node.js. En este ejemplo, crearemos un servidor web que escucha en el puerto 3000 y responde con un mensaje de "Hello, World!".

<!DOCTYPE html>
<html>
<head>
  <title>Aplicación web simple con Node.js</title>
</head>
<body>
  <h1>¡Hola, Mundo!</h1>
</body>
</html>

En este código HTML simple, creamos una página web que muestra un mensaje de "¡Hola, Mundo!" utilizando la etiqueta <h1>. Guarda este código en un archivo llamado index.html.

Creación de un servidor Node.js

Para crear un servidor Node.js que sirva este archivo HTML, necesitamos crear un archivo JavaScript que maneje las solicitudes HTTP y devuelve el archivo HTML. A continuación se muestra un ejemplo de cómo hacerlo:

const http = require('http');
const fs = require('fs');
const path = require('path');

const server = http.createServer((req, res) => {
  const filePath = path.join(__dirname, 'index.html');

  fs.readFile(filePath, (err, data) => {
    if (err) {
      res.writeHead(500, { 'Content-Type': 'text/plain' });
      res.end('Error de servidor');
    } else {
      res.writeHead(200, { 'Content-Type': 'text/html' });
      res.end(data);
    }
  });
});

server.listen(3000, () => {
  console.log('Servidor escuchando en el puerto 3000');
});

En este ejemplo, creamos un servidor HTTP utilizando el módulo http de Node.js. Cuando se realiza una solicitud HTTP al servidor, leemos el archivo index.html y lo devolvemos como respuesta. Finalmente, el servidor se inicia y comienza a escuchar en el puerto 3000.

Conclusión

En este tutorial, aprendimos cómo instalar Node.js en diferentes sistemas operativos y exploramos algunos conceptos básicos sobre cómo funciona Node.js. También construimos una aplicación web simple con Node.js que sirve un archivo HTML.

Node.js es una herramienta poderosa y versátil que puede utilizarse para construir una amplia variedad de aplicaciones web. Siempre hay más por aprender sobre Node.js, así que te animo a explorar más y experimentar con este potente entorno de ejecución de JavaScript. ¡Buena suerte!

0 0 votes
Article Rating
43 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
@carlosronceroparra6760
4 months ago

Hola, tengo conocimiento en java script y quiero utilizar webstorm. ¿me podrías aconsejar qué pasos seguir para aprender node js, he visto tu curso de javascript y es muy bueno, aunque he completado con javascript.info... me gustaría que hubiera prácticas, tipo juegos, etc… Gracias

@Triqery-pw7sq
4 months ago

Yo siento que no es justo que Node.JS no está en español.

@tempusmagia486
4 months ago

En otras palabras, hay que usar rust que es muchíiiiiiiisimo más rápido

@miltoncoronado7066
4 months ago

pero no es la version LTS? o si?

@stamcoldcrazy123
4 months ago

Eres brutal bro !!! Gracias por todo tu conocimiento !!!

@jvjaviervargas2252
4 months ago

Uso nodejs con express muy bueno

@SonGoku-pc7jl
4 months ago

leanpub te cobran 19e para poder descargar el libro a 0e 🙁

@santiagomoreirapalma9816
4 months ago

Buenas comunidad, he hecho un proyecto y en me pidieron moverlo a un pc que funciona como servidor y usa Windows 7 de 32 bits, y no me funciona instalar node , alguien conoce alguna solución por la compatibilidad o arreglado este problema, en si necesito node para instalar algunas dependencias de ese proyecto

@edgargiobanny
4 months ago

Muy bien, gracias por el dato amigo saludos

@yerkoala
4 months ago

Podrías hacer un video de como integrar WebPay con NodeJS?? Por favor midu

@lsolano2707
4 months ago

Like si también esperas con ansias el curso de Cloudflare 💪

@lsolano2707
4 months ago

Esperando con ansias node 22 🙌

@Daker11Gamer
4 months ago

Yo uso la 21 por el watch, pero era horrible, corres un server y se reinicia apenas haces la petición era horrible, estas son buenas noticias

@weengineers5999
4 months ago

Excelente lo del node —run dev espero pronto sea estable ya para poder usarlo en los nuevos desarrollos

@jacobgonzalez4746
4 months ago

Como que ya hay un reemplazo de nvm? 😅

@juanfernandoechavarria2457
4 months ago

Curso de cloudflare ? 🤯

@jorgecedillo7830
4 months ago

Todo esto ya lo podíamos hacer desde node 20 en adelante de hecho por lo que recuerdo

@yaelgt9179
4 months ago

¿Qué proyectos puedo crear en Node.js para mi portfolio? hablan mucho del Front porque es más demandado pero donde quedamos los de Backend? pipipi

@Alejandrodaniel1818
4 months ago

esos lentes son de protecion de luz azul

@juancampos352
4 months ago

Chau nodemon RIP