Jaime Irazabal
Volver a cursos

Node.js desde Cero

Aprende a construir aplicaciones backend robustas con Node.js, desde los fundamentos hasta aplicaciones completas.

Principiante

Progreso del curso

0%

cards
Con la tecnología de paypal
Node.js Course

Introducción a Node.js

Node.js es un entorno de ejecución para JavaScript construido con el motor V8 de Chrome. Node.js utiliza un modelo de operaciones E/S sin bloqueo y orientado a eventos, que lo hace liviano y eficiente.

¿Por qué aprender Node.js?

  • Utiliza JavaScript tanto en frontend como en backend
  • Gran ecosistema de paquetes con npm
  • Ideal para aplicaciones en tiempo real y APIs
  • Alta demanda en el mercado laboral

Sistema de Progreso

El Sistema de Progreso te ayuda a seguir tu avance en el curso y desbloquear contenido adicional. Aquí te explicamos cómo funciona:

¿Cómo funciona?

  • Gana puntos completando proyectos y ejercicios prácticos
  • Tu progreso se guarda automáticamente mientras avanzas
  • Desbloquea contenido adicional al alcanzar nuevos niveles

Niveles y Recompensas

Nivel 1 (0-100 puntos)
Principiante

Acceso a proyectos básicos y ejercicios iniciales

Nivel 2 (101-300 puntos)
Intermedio

Desbloqueo de soluciones detalladas y proyectos intermedios

Nivel 3 (301-600 puntos)
Avanzado

Acceso a proyectos avanzados y recursos premium

Nivel 4 (601+ puntos)
Experto

Acceso a mentoría y proyectos especiales

Cómo ganar puntos

  • Completa los ejercicios prácticos al final de cada sección
  • Realiza los proyectos propuestos en la sección de proyectos
  • Participa en los desafíos de código y ejercicios interactivos

Instalación y configuración de Node.js

Aprende a instalar y configurar Node.js en tu sistema operativo. Node.js es compatible con Windows, macOS y Linux.

Instalación en Windows

Paso 1: Descargar Node.js

  • Visita la página oficial: nodejs.org
  • Descarga la versión LTS (Long Term Support) recomendada para la mayoría de usuarios

Paso 2: Instalar Node.js

  • Ejecuta el archivo descargado (node-vX.X.X-x64.msi)
  • Acepta los términos de licencia
  • Selecciona la ubicación de instalación (se recomienda dejar la predeterminada)
  • Asegúrate de que la opción "Add to PATH" esté marcada
  • Completa el asistente de instalación

Paso 3: Verificar la instalación

Abre una nueva ventana de PowerShell o Command Prompt y ejecuta los siguientes comandos:

Verificar instalación

Deberías ver las versiones instaladas de Node.js y npm. Por ejemplo:

v18.17.0
9.6.7

Instalación en macOS

Paso 1: Instalar Homebrew (opcional)

  • Abre Terminal
  • Ejecuta el siguiente comando:
Instalar Homebrew

Paso 2: Instalar Node.js

Elige uno de estos métodos:

Método 1: Usando Homebrew
Instalar Node.js con Homebrew
Método 2: Usando el instalador oficial
  • Visita nodejs.org
  • Descarga la versión LTS para macOS
  • Ejecuta el instalador .pkg descargado

Paso 3: Verificar la instalación

Abre Terminal y ejecuta los siguientes comandos:

Verificar instalación

Instalación en Linux

Paso 1: Preparar el sistema

Elige los comandos según tu distribución:

Ubuntu/Debian:
Preparar Ubuntu/Debian
Fedora:
Preparar Fedora

Paso 2: Instalar Node.js

Ubuntu/Debian:
Instalar en Ubuntu/Debian
Fedora:
Instalar en Fedora

Paso 3: Verificar la instalación

Abre una terminal y ejecuta los siguientes comandos:

Verificar instalación

Configuración inicial

Después de la instalación, es recomendable configurar algunas opciones básicas de npm:

Configuración de npm

Verificación final

Para asegurarte de que todo está funcionando correctamente, ejecuta estos comandos:

Verificación final

Conceptos Básicos de Node.js

Antes de comenzar a programar, es importante entender los conceptos fundamentales que hacen que Node.js sea único y poderoso.

Variables y Tipos de Datos

Node.js utiliza JavaScript, por lo que comparte los mismos tipos de datos y declaración de variables.

variables.js

Bucles y Control de Flujo

Node.js proporciona diferentes tipos de bucles y estructuras de control para manejar el flujo de ejecución.

bucles.js

Event Loop y Asincronía

El Event Loop es uno de los conceptos más importantes en Node.js. Permite manejar operaciones asíncronas de manera eficiente.

event-loop.js

Módulos y Require

Node.js utiliza un sistema de módulos para organizar el código. Los módulos pueden ser archivos individuales o directorios.

modulos.js

Funciones Avanzadas y ES6+

JavaScript moderno ofrece características avanzadas para el manejo de funciones y sintaxis mejorada.

funciones-avanzadas.js

Streams y Sistema de Archivos

Los streams son una forma eficiente de manejar datos en Node.js, especialmente cuando trabajamos con archivos grandes.

streams-fs.js

HTTP y Networking

Node.js proporciona módulos nativos para crear servidores web y manejar comunicaciones en red.

http-networking.js

Manejo de Errores y Variables de Entorno

El manejo adecuado de errores y la configuración del entorno son aspectos cruciales en el desarrollo con Node.js.

errores-env.js

Herramientas de Desarrollo

Las herramientas de desarrollo son esenciales para mantener la calidad del código y facilitar el debugging.

herramientas-dev.js

Tu primer programa en Node.js

Vamos a crear un programa simple que muestre un mensaje en la consola. Este es el primer paso para familiarizarte con Node.js.

Ejemplo: Hola Mundo en Node.js

hola-mundo.js

Ejercicio práctico

Modifica el código anterior para crear una función que calcule el área de un círculo dado su radio.

ejercicio-area.js

Módulos en Node.js

Node.js utiliza un sistema de módulos para organizar el código. Esto permite dividir tu aplicación en partes más pequeñas y reutilizables.

Ejemplo: Creando y usando módulos

matematicas.js
app.js

Ejercicio práctico

Crea un módulo llamado "geometria.js" que exporte funciones para calcular el área y perímetro de diferentes figuras geométricas.

geometria.js

Servidores HTTP con Node.js

Node.js proporciona un módulo HTTP nativo que nos permite crear servidores web. Aunque podemos usarlo directamente, en la práctica solemos utilizar frameworks como Express.js para simplificar el desarrollo.

Ejemplo: Servidor HTTP básico

server.js

Ejercicio práctico

Crea un servidor HTTP que maneje las siguientes rutas: - GET /api/productos: Devuelve una lista de productos - POST /api/productos: Crea un nuevo producto - GET /api/productos/:id: Devuelve un producto específico

productos-server.js

Express.js: Framework Web para Node.js

Express.js es el framework web más popular para Node.js. Proporciona una capa de abstracción que simplifica la creación de aplicaciones web y APIs RESTful.

Ejemplo: API REST con Express.js

app.js

Middleware en Express.js

Los middleware son funciones que tienen acceso al objeto request, response y al siguiente middleware en el ciclo de request-response.

middleware.js

Bases de datos con MongoDB y Mongoose

MongoDB es una base de datos NoSQL que se integra perfectamente con Node.js. Mongoose es una biblioteca que nos ayuda a modelar y trabajar con documentos de MongoDB de manera más sencilla.

Ejemplo: Modelo y operaciones CRUD con Mongoose

models/Usuario.js

API REST con MongoDB

app.js

Relaciones entre modelos

En MongoDB podemos crear relaciones entre documentos usando referencias o embebiendo documentos.

models/Post.js