As Python continues to grow in popularity, projects are becoming larger and more complex. Many Python developers are now taking an interest in high-level software design patterns such as hexagonal/clean architecture,...

Buy Now From Amazon

As Python continues to grow in popularity, projects are becoming larger and more complex. Many Python developers are now taking an interest in high-level software design patterns such as hexagonal/clean architecture, event-driven architecture, and the strategic patterns prescribed by domain-driven design (DDD). But translating those patterns into Python isn't always straightforward.

With this hands-on guide, Harry Percival and Bob Gregory from MADE.com introduce proven architectural design patterns to help Python developers manage application complexity-and get the most value out of their test suites.

Each pattern is illustrated with concrete examples in beautiful, idiomatic Python, avoiding some of the verbosity of Java and C# syntax. Patterns include:

  • Dependency inversion and its links to ports and adapters (hexagonal/clean architecture)
  • Domain-driven design's distinction between entities, value objects, and aggregates
  • Repository and Unit of Work patterns for persistent storage
  • Events, commands, and the message bus
  • Command-query responsibility segregation (CQRS)
  • Event-driven architecture and reactive microservices


Similar Products

Python for DevOps: Learn Ruthlessly Effective AutomationUsing Asyncio in Python: Understanding Python's Asynchronous Programming FeaturesFundamentals of Software Architecture: An Engineering ApproachHands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent SystemsEffective Python: 90 Specific Ways to Write Better Python (2nd Edition) (Effective Software Development Series)Monolith to Microservices: Evolutionary Patterns to Transform Your MonolithKubernetes: Up and Running: Dive into the Future of InfrastructureData Science from Scratch: First Principles with Python