¡Bienvenidos! 👋 Este repositorio contiene el código del curso de Node.js y Express creado para freeCodeCamp en Español.
Durante el curso puedes aprender los fundamentos de desarrollo web back-end, Node.js y Express paso a paso a través de la práctica con ejemplos y proyectos cortos que te ayudarán a aplicar tu conocimiento.
Para tomar el curso, debes tener conocimiento previo de JavaScript ya que Node.js es un entorno de ejecución de JavaScript.
Se recomienda tener conocimento previo de funciones flecha, métodos, objetos, .map()
, .filter()
, require()
, .findIndex()
, y .sort()
.
Durante el curso se usará Visual Studio Code como editor de código pero puedes trabajar con el editor de código o IDE que desees.
También usaremos el terminal integrado de Visual Studio Code.
Los temas están enfocados en un concepto específico. Aquí están dividos en categorías principales para darte una idea general del contenido.
- Introducción a Node.js.
- Conceptos básicos de desarrollo web back-end.
- Aplicaciones de Node.js.
- APIs y para qué se usan.
- Ventajas de Node.js.
- Descargar e instalar Node.js.
- Confirmar que Node.js fue instalado exitosamente.
- Verificar tu versión de Node.js.
- El REPL de Node.js.
- ¿Qué es un módulo? Conceptos y ventajas.
- Exportar e importar módulos.
- Exportar varios elementos de un módulo de JavaScript.
- Ejecutar un archivo JavaScript con el comando node.
- Módulos principales de Node.js.
- El módulo console.
- El módulo process.
- El módulo os.
- El módulo fs.
- El módulo timers.
- ¿Qué es npm?
- Conceptos básicos de npm.
- Inicializar un paquete con npm init.
- El archivo package.json.
- Introducción al formato JSON.
- Instalar y desinstalar paquetes con npm.
- El archivo package-lock.json.
- ¿Qué es un evento?
- Eventos en Node.js.
- Eventos y procesos síncronos y asíncronos.
- Promesas y funciones callback en JavaScript.
- Promesas, .then() y .catch().
- Funciones asíncronas con async y await.
- Servidores con Node.js y el protocolo HTTP
- El modelo cliente-servidor.
- Formato de solicitudes y respuestas HTTP.
- Métodos o verbos HTTP: GET, POST, PUT, DELETE.
- Códigos de estado HTTP.
- El módulo http en Node.js.
- Crear un servidor en Node.js.
- Los objetos req y res.
- Estructura de una URL.
- Routing (Enrutamiento) en Node.js.
- ¿Qué es Nodemon?
- Cómo instalarlo globalmente.
- Cómo usarlo para actualizar aplicaciones de Node.js automáticamente.
- Conceptos importantes: CRUD, REST, API.
- Cómo instalar Express y cómo crear un proyecto.
- Routing en Express.
- Express y Nodemon.
- Cómo manejar varias rutas.
- Parámetros de URL y rutas dinámicas.
- Middleware en Express.
- Manejar solicitudes GET, POST, PUT y DELETE.
- Parámetros query.
- Routers en Express.
Durante el curso crearemos un servidor y una API básica paso a paso para enviar información de cursos al navegador. La API manejará los métodos HTTP GET, POST, PUT, PATCH, y DELETE.
Nota: el curso estará enfocado en Node.js y Express. No trabajaremos directamente con bases de datos pero sí veremos ciertas aplicaciones y cómo se incorporarían las bases de datos en un servidor.
Durante el curso usaremos Node.js para ejecutar los programas en el terminal. Para ello, usaremos el siguiente comando si el archivo a ejecutar es app.js.
> node app.js
Puedes descargar el código de cada parte del curso desde este repositorio.
El repositorio está divido en estas carpetas que contienen los archivos de código con los ejemplos y/o proyecto(s) presentados.
También puedes encontrar un archivo específico haciendo clic en el botón "Go to file" y escribiendo el nombre del archivo que deseas encontrar.
Si deseas ver el curso en nuestro canal de YouTube, haz clic en este enlace: https://www.youtube.com/watch?v=1hpc70_OoAg