Node & Express
24 preguntas · 5 preguntas de salida · 5 retos · 3 simulacros
Fundamentos de Node
CommonJS vs ES Modules (ESM)
¿Cuál es la diferencia entre CommonJS y ES Modules en Node.js, y cómo activas cada uno?
El Event Loop en Node.js
¿Qué es el event loop en Node.js, cuáles son sus fases y en qué se diferencia del event loop del navegador?
I/O no bloqueante (Non-blocking I/O)
¿Qué diferencia hay entre I/O bloqueante y no bloqueante en Node.js, y por qué en un servidor nunca debes bloquear el event loop?
process.nextTick y las microtareas
¿Cuál es el orden de ejecución entre `process.nextTick`, las promesas (`.then`), `setImmediate` y `setTimeout` en Node.js?
Variables de entorno
¿Qué son las variables de entorno en Node.js, cómo las lees, y por qué no debes hardcodear secretos en el código?
Qué es Node.js
¿Qué es Node.js y cómo logra atender muchas peticiones al mismo tiempo con un solo hilo?
Módulos y npm
Dependencies vs devDependencies
¿Cuál es la diferencia entre `dependencies` y `devDependencies` en el `package.json`? ¿Por qué importa la distinción?
El archivo package.json
¿Para qué sirve el `package.json` y qué hacen sus campos más importantes como `scripts`, `main` y `type`?
El sistema de módulos de CommonJS (require)
¿Qué hace `require` internamente en CommonJS? ¿Qué pasa si haces `require` del mismo archivo dos veces?
Versionado semántico (semver) y package-lock.json
¿Qué significa el versionado semántico (`major.minor.patch`) y cuál es la diferencia entre `^` y `~` en las versiones del `package.json`?
Fundamentos de Express
params, query y body
¿Cuál es la diferencia entre `req.params`, `req.query` y `req.body` en Express?
Qué es Express
¿Qué es Express y qué problema resuelve sobre el módulo `http` de Node?
Request y Response en Express
¿Qué información traen los objetos `req` y `res` en Express y cuáles son los métodos de respuesta más comunes?
Routing en Express
¿Qué es el routing en Express y cómo defines rutas con parámetros dinámicos como `/usuarios/:id`?
Middleware
Manejo de errores en handlers async en Express
En Express 4, ¿qué pasa si un handler `async` lanza un error o su promesa se rechaza, y cómo lo manejas correctamente?
Middleware de manejo de errores en Express
¿Cómo funciona el middleware de manejo de errores en Express y cómo lo reconoce el framework?
El orden de los middleware en Express
¿Por qué importa el orden en que registras los middleware y las rutas en Express?
Qué es un middleware en Express
¿Qué es un middleware en Express y cómo funciona dentro del ciclo de una petición?
APIs REST
Códigos de estado HTTP
¿Qué familias de códigos de estado HTTP existen y qué código usarías en cada operación CRUD?
CRUD y verbos HTTP
¿Cómo se mapean las operaciones CRUD a los verbos HTTP y qué significa que un verbo sea idempotente?
Estructura de un proyecto Express
¿Cómo organizarías un proyecto Express en capas y por qué separar routes, controllers y services?
Principios REST
¿Qué es una API REST y cuáles son sus principios fundamentales?
Seguridad básica en una API Express
¿Qué medidas de seguridad básicas aplicarías en una API REST con Express?
Validación de datos
¿Por qué hay que validar el input del cliente y cuál es la diferencia entre responder 400 y 422?
Retos de código
crear un wrapper asyncHandler y un middleware de errores centralizado.
javascript
construir una API REST CRUD de "tareas" con un array en memoria.
javascript
crear un servidor Express minimo con una ruta GET /.
javascript
escribir un middleware que loguee metodo, url y tiempo de respuesta.
javascript
un endpoint que filtra y pagina un array segun los query params.
javascript
¿Qué imprime este código?
¿Qué imprime? #001
event loop de Node, orden de nextTick, Promise, setTimeout, setImmediate.
¿Qué imprime? #002
caching de modulos en Node (require devuelve siempre la misma instancia).
¿Qué imprime? #003
async/await y orden de ejecución (que es sincrono y que es asincrono).
¿Qué imprime? #004
event loop de Node, setTimeout(0) vs setImmediate dentro de un callback de I/O.
¿Qué imprime? #005
closures y scope (var vs let) en callbacks asincronos, como los de un servidor.
Simulacros con voz
Simulacro de entrevista — Diseño de API REST (Node.js + Express)
5 preguntas · el entrevistador las lee en voz alta
Simulacro de entrevista — Junior (Node.js + Express)
5 preguntas · el entrevistador las lee en voz alta
Simulacro de entrevista — Mid-level (Node.js + Express)
5 preguntas · el entrevistador las lee en voz alta