What this book covers
Chapter 1, Clean Architecture Essentials: Transforming Python Development, introduces the foundational concepts of Clean Architecture and explains why these principles matter for Python developers. It establishes the core architectural layers and explores how Clean Architecture can transform Python development practices.
Chapter 2, SOLID Foundations: Building Robust Python Applications, examines how SOLID principles provide the foundation for Clean Architecture. Through practical Python examples, you’ll learn how to implement Single Responsibility, Open–Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion Principles.
Chapter 3, Type-Enhanced Python: Strengthening Clean Architecture, demonstrates how Python’s type hints can enhance architectural boundaries. You’ll explore how typing improves interface definition, supports dependency inversion, and enables better tooling for architectural validation.
Chapter 4, Domain-Driven Design: Crafting the Core Business Logic, focuses on building robust domain models. You’ll learn how to identify and model entities, value objects, and domain services while ensuring they remain independent of external concerns.
Chapter 5, The Application Layer: Orchestrating Use Cases, covers the implementation of use cases that coordinate domain objects to accomplish specific tasks. You’ll create clean interfaces between your domain and outer layers while maintaining proper separation of concerns.
Chapter 6, The Interface Adapters Layer: Controllers and Presenters, explores how to create controllers that translate external requests and presenters that format domain data. You’ll build clean boundaries between your application core and delivery mechanisms.
Chapter 7, The Frameworks and Drivers Layer: External Interfaces, demonstrates how to integrate external frameworks and infrastructure while keeping your core business logic independent. You’ll implement database adapters, web frameworks, and external services that respect Clean Architecture boundaries.
Chapter 8, Implementing Test Patterns with Clean Architecture, provides strategies for comprehensive testing across architectural boundaries. You’ll create unit tests for domain objects, integration tests for use cases, and end-to-end tests that verify system behavior.
Chapter 9, Adding Web UI: Clean Architecture’s Interface Flexibility, shows how to implement a web interface for your Clean Architecture application. You’ll build a Flask-based web interface that demonstrates how Clean Architecture enables adding new interfaces without disrupting existing functionality.
Chapter 10, Implementing Observability: Monitoring and Verification, covers strategies for adding logging, monitoring, and architectural verification while maintaining Clean Architecture boundaries. You’ll implement cross-cutting concerns without compromising architectural integrity.
Chapter 11, Legacy to Clean: Refactoring Python for Maintainability, provides practical approaches for gradually transforming legacy Python applications. You’ll learn incremental refactoring techniques that improve architecture while maintaining system stability.
Chapter 12, Your Clean Architecture Journey: Next Steps, explores how to apply Clean Architecture across different system types and organizational contexts. You’ll discover strategies for architectural leadership, community building, and balancing pragmatism with architectural principles.