</> CodeBooks
    ← Volver a Python (página 21)
    Portada de Mastering Python Design Patterns, 3rd Edition

    Mastering Python Design Patterns, 3rd Edition

    Kamon Ayeva, Sakis Kasampalis

    Editorial
    Packt
    Año
    2024
    Páginas
    ~296
    Nivel
    Avanzado

    De qué trata

    Tercera edición, publicada por Packt en mayo de 2024, del libro de Sakis Kasampalis sobre patrones de diseño en Python, ahora escrito junto a Kamon Ayeva. Está dirigida a programadores de Python de nivel intermedio y avanzado que ya dominan la sintaxis, las estructuras de datos y la orientación a objetos, y quieren escribir código más mantenible y escalable. Los ejemplos están probados con Python 3.12 y usan herramientas como Mypy, Redis, Docker y LocalStack.

    Sus once capítulos se organizan en tres partes. La primera repasa los principios de diseño (encapsulación, composición, interfaces, bajo acoplamiento) y los principios SOLID. La segunda recorre los patrones clásicos de la Banda de los Cuatro: creacionales (factory, builder, prototype, singleton y object pool), estructurales (adapter, decorator, bridge, facade, flyweight y proxy) y de comportamiento (chain of responsibility, command, observer, state, strategy, memento, iterator, template e interpreter). La tercera va más allá de ese catálogo: patrones arquitectónicos (MVC, microservicios, serverless con funciones lambda y event sourcing), de concurrencia y asincronía (thread pool, modelo de workers, futures y promises, programación reactiva), de rendimiento (cache-aside, memoización y carga perezosa), de sistemas distribuidos (throttling, retry y circuit breaker), de pruebas (mock objects e inyección de dependencias) y un capítulo de antipatrones habituales en Python.

    Cada patrón se explica con su motivación, casos de uso reales y ejemplos de código breves en lugar de un gran proyecto integrado. Con unas 300 páginas para tanto temario, la parte de patrones distribuidos y arquitectónicos es una introducción práctica, no un tratado de diseño de microservicios: no cubre patrones como Saga o CQRS en profundidad. Es una buena referencia para elegir el patrón adecuado y reconocer cuándo una solución más simple es preferible.

    • Principios SOLID
    • Patrones creacionales
    • Patrones estructurales
    • Patrones de comportamiento
    • Patrones arquitectónicos
    • Concurrencia y asincronía
    • Patrones de rendimiento
    • Sistemas distribuidos
    • Patrones de pruebas
    • Antipatrones

    ¿Cómo enseña?

    TeóricoPráctico

    Teoría + práctica

    • ✗ Sin ejercicios
    • ✗ Sin proyectos

    Más de Python con nivel Avanzado