Patrones de diseño y SOLID en Python
Clase 1 de 27 • Curso de Patrones de Diseño y SOLID en Python
Contenido del curso
Principios SOLID
- 2

Principio de responsabilidad única en SOLID
05:59 min - 3

Refactorizando código Python con principios SOLID
11:14 min - 4

Cómo aplicar SRP en un procesador de pagos con Stripe
25:19 min - 5

Open Closed Principle: extensión sin modificación
02:39 min - 6

Cómo usar clases abstractas en Python
14:46 min - 7

Principio de Liskov en S.O.L.I.D.
03:18 min - 8

Principio de sustitución de Liskov en Python
06:38 min - 9

Interface Segregation: cuándo separar contratos
02:33 min - 10

Segregación de interfaces en procesadores de pagos
09:05 min - 11

Principio de inversión de dependencias explicado
04:13 min - 12

Principio de inversión de dependencias: servicio de pagos flexible
05:56 min
Reestructuración del proyecto
Patrones de Diseño
- 14

Qué son los patrones de diseño: definición y categorías
03:54 min - 15

Strategy Pattern con Python y setprocessor
01:55 min - 16

Strategy Pattern para pagos en Python
10:58 min - 17

Factory Pattern: centralizar creación de objetos
03:05 min - 18

Patrón Factory para procesar pagos con match
11:06 min - 19

Patrón Decorator en 5 pasos para funcionalidad dinámica
03:06 min - 20

Patrón decorador en servicios de pagos
12:57 min - 21

Builder Pattern: construcción paso a paso
01:28 min - 22

Builder pattern para servicios de pagos
18:55 min - 23

Observer Pattern en sistemas de eventos
01:48 min - 24

Observer en sistemas de pagos con Python
11:11 min - 25

Chain of Responsibility para validar pagos
02:04 min - 26

Chain of Responsibility en servicios de pagos
16:27 min - 27

Arquitectura robusta para procesadores de pago
03:19 min
Aprende a construir un sistema de pagos en Python aplicando patrones de diseño y principios SOLID para ganar mantenibilidad, flexibilidad y escalabilidad. Estas prácticas, con décadas de uso profesional, mejoran las pruebas unitarias y de integración, optimizan el rendimiento y elevan la experiencia de desarrollo.
¿Por qué aprender patrones de diseño y principios SOLID?
Durante más de 30 años, los patrones de diseño han puesto orden al caos del código; por su parte, los principios SOLID llevan 20 años manteniendo a los programadores felices. Son soluciones probadas a problemas comunes que estandarizan decisiones y evitan reinvertar la rueda.
- Mejoran la mantenibilidad: el código se entiende y cambia con menos fricción.
- Aumentan la flexibilidad: facilitan extender sin romper.
- Escalan mejor: permiten crecer con orden.
- Facilitan pruebas unitarias y de integración: verificas con mayor confianza.
- Mejoran el rendimiento: promueven decisiones de diseño más eficientes.
- Elevan la experiencia de desarrollo: trabajar se vuelve más claro y agradable.
¿Qué analogía ayuda a entender su rol en el proyecto?
Imagina la base de código como una ciudad. Los patrones de diseño son los planos que definen cómo se construye. Los principios SOLID son las leyes que la mantienen en orden. Juntos sostienen el mundo del desarrollo de software.
¿Qué los hace útiles por décadas?
Se han desarrollado, entendido y refinado durante años. Por eso se recomiendan: porque funcionan en escenarios reales y evitan errores comunes.
¿Cómo se aplicarán en un procesador de pagos en Python?
Se construirá un procesador de pagos en Python como hilo conductor. La idea es partir de una base funcional que incumple SOLID y patrones, y transformarla paso a paso hasta un sistema robusto.
- Base inicial: código funcional con malas prácticas intencionales.
- Iteración: aplicar cada patrón de diseño y principio SOLID gradualmente.
- Resultado: un sistema de procesamiento de pagos mejor estructurado y mantenible.
¿Qué metodología y retos se proponen?
A lo largo de las sesiones habrá retos para resolver en la sección de comentarios. De esas respuestas nacerán nuevas discusiones y mejoras incrementales para consolidar el aprendizaje.
¿Cómo se verá el progreso del proyecto?
Se trabajará con un repositorio en GitHub donde se registrarán las mejoras incrementales del sistema. Así se evidencian los cambios entre una versión y otra.
¿Qué necesitas para empezar con Python y el repositorio?
Se sugiere una base sólida de Python y un entorno de desarrollo preparado para seguir el proyecto y ejecutar pruebas.
- Curso de Python básico en Platzi: recomendado como base del lenguaje.
- Curso de pruebas unitarias en Python: opcional, útil para verificar lo desarrollado.
- Entorno de desarrollo: editor, manejador de paquetes como Pip, UV o Poetry.
- Entorno virtual de dependencias: aislar librerías por proyecto.
- Control de versiones: git y una cuenta en GitHub.
¿Quién guía el aprendizaje?
Eduardo Álvarez, Senior Backend Engineer en Platzi, lidera el proceso y marca el ritmo para que apliques teoría en código real.
¿Listo para transformar tu forma de programar? Comparte tus dudas y soluciones en los comentarios para alimentar las próximas discusiones.