Desarrollo Back End
6 semanas
Adquirirás las habilidades y conocimientos necesarios para desarrollar aplicaciones web robustas y eficientes utilizando el popular entorno de ejecución Node.js. Aprenderás desde los fundamentos del desarrollo back-end hasta conceptos de arquitectura de software y bases de datos.
Fundamentos de Node JS
Instalación y preparación del entorno
¿Cómo funciona internet?
Peticiones y respuestas
Redirecciones
Servidores
NPM
Nodemon
Runtime errors vs Logical errors
Debugger
JavaScript vs NodeJS
Event Loop de JavaScript
Express
¿Qué es express.js? Y alternativas
Routing
Middleware a profundidad
Tipos de peticiones en express
Tipos de respuestas
Gestionar errores HTTP
Trabajando con archivos HTML
Trabajando con archivos estáticos
Trabajando con contenido dinámico (Rendering)
Introducción a arquitecturas de software
Model View Controller (MVC)
Arquitectura Orientada a Servicios (SOA)
Routes
Services
Middlewares
Libraries
Schemas
API RESTFUL: GET y POST
API RESTFUL: PUT, PATCH y DELETE
Bases de Datos NOSQL
Configuración del ORM: Mongoose
Colecciones y documentos
Operaciones CRUD en MongoDB
Microservicios
Autenticación de usuarios y roles
Validación de datos
JSON web token
Autenticación de usuarios
Autorización de usuarios
Mejores prácticas al trabajar con usuarios
Auth Middleware
Roles
Protección de rutas
Envío de emails
Recuperación de contraseña
Passport.js y autenticación con redes sociales
Integrar autenticación con el cliente.
Carga de archivos y descarga
Manipulando Multipart FormData
Multer
Servicios en la nube para almacenamiento
Servir archivos
Restringir acceso a archivos
Streaming data vs preloading data
Eliminando archivos
Sockets
WebSockets
Socket.io
Estableciendo conexión con el cliente
Compartiendo datos en tiempo real
Sincronizando acciones
Añadiendo pagos - Webhooks
Introducción a Stripe y PayPal
Agregando endpoints para pagos
Webhooks
Gestionando resultados de pago con webhooks