API REST - DDD - Vertical Slices - CQRS - FastAPI y Mediatr

preview_player
Показать описание
En este vídeo te enseño cómo implementar API REST combinando patrones como Domain-Driven Design (DDD), Vertical Slices Architecture (VSA), Command and Query Responsibility Segregation (CQRS) y Mediator para construir aplicaciones escalables y mantenibles. Aprenderás a desacoplar eficientemente tus componentes y a mejorar el rendimiento y la seguridad de tus APIs. Para implementar todo lo explicado en el vídeo he utilizado Python, FastAPI y Mediatr y tienes todo el código accesible en un repositorio de GitHub por si quieres reutilizarlo en alguna de tus implementaciones o, simplemente, probar en tu entorno local todo lo que en el vídeo explico.

Repositorio de GitHub:

TIMELINE:
00:02 - Introducción
00:40 - ¿Qué vamos a ver?
02:56 - API REST - Buenas prácticas
06:10 - Domain-Driven Design
09:13 - Vertical Slices Architecture
12:15 - Command and Query Responsibility Segregation
14:44 - Patrón Mediator
17:12 - ¿Cómo unimos todo?
18:28 - Presentación de la práctica
19:25 - Presentación del código
21:58 - Controladores y rutas con FastAPI
24:24 - Redirección a Swagger
24:56 - Demostración de Swagger
24:45 - Vertical Slices en Swagger
26:36 - Estructura del código - Dominio
27:45 - Estructura del código - Vertical Slices
29:06 - Estructura del código - CQRS
29:20 - Estructura del código - Mediator
29:50 -Signup Command & Signup Command Handler
31:10 - Cómo registrar manualmente un Handler con Mediatr
34:00 - Demo de registro de usuario
35:28 - Autenticación y autorización con Swagger
37:39 - Pedir un token (autenticación Web)
41:40 - Cómo se ha implementado autenticación y autorización
45:15 - Uso de autorización en nuestros controladores
48:42 - Update User - Comando, Handler y Permisos
53:19 - Ejemplo de Queries - Demostración de una Vertical Slice - Questios
55:22 - Repositorio Genérico - Implementación y usos particulares
59:00 - Recuperar un Agregado - Full Question
01:00:15 - Crosscutting - Logging
01:01:06 - Crosscutting - Notification Service para envío de emails
01:02:25 - Swagger vs ReDoc - Otra forma de exponer la documentación de nuestra API
01:03:44 - Resumen de lo visto hasta ahora
01:06:00 - EXTRA - Tests unitarios. Varias formas de ejectar nuestros tests
01:08:12 - Coverage Gutters para la cobertura de código - ¿Qué me falta por probar con tests unitarios?
01:11:50 - Repor de cobertura en HTML y sobre cada fichero en VSCode
01:16:53 - Conclusiones y despedida

Creo que este vídeo es ideal para desarrolladores intermedios a avanzados que buscan profundizar en arquitecturas modernas y mejores prácticas de desarrollo de software.
Рекомендации по теме
Комментарии
Автор

Soy programador .Net hace mas de 15 años y lo único que puedo decir es, gracias, este contenido es muy bienvenido, no lo dejes, no decaigas, FastAPI python me parece de lo mas interesante y aportar luz, en español y conceptos avanzados hay muy poco entre mucha paja, señores tomen nota. Ah! Agnóstico al lenguaje esta bien claro.

aratar
Автор

Fantástica explicación!!! Muy agradecido.. desde Paraguay

moisesvillalba
Автор

Excelente ojalá pudieras hacer un curso explicando fastapi y con proyectos porque de fastapi no se consiguen casi en español

eleazarmartimez
Автор

Estos conceptos pero usando .NET y C# porfaaaa jaja

lococba
Автор

En mi humilde opinion, si van a optar por un proyecto grande y complejo, y que ademas quieren aplicar patrones de diseño, arquitectura, etc.. Es mucho mejor utilizar lenguajes fuertemente tipados y que ademas tengan interfaces (.NET, Java, etc). Python es un lenguaje superpotente que no destaca principalmente en el mundo web

leonguerrero