Architecture Patterns with Python
Harry Percival spent a few years as a management consultant after an idyllic youth spent playing with BASIC on French 8-bit computers like the Thomson T-07, whose keys went "boop" when pressed. Soon after, he found his true geek nature and was fortunate to work with a group of XP aficionados on the groundbreaking but now-defunct Resolver One spreadsheet. He worked at PythonAnywhere LLP, where he traveled the world giving speeches, seminars, and conferences to spread the word about TDD.
Projects are becoming larger and more complicated as Python's popularity grows. Many Python developers are interested in high-level software design patterns such as hexagonal/clean architecture, event-driven architecture, and domain-driven design strategic patterns (DDD). However, transferring those patterns into Python is not always simple.
In Architecture Patterns with Python, Harry Percival and Bob Gregory offer established architectural design patterns to assist Python developers manage application complexity and get the most out of their test suites.
Each pattern is illustrated with concrete examples written in beautiful, idiomatic Python, which avoids some of the verbosity found in Java and C# syntax. Among the patterns are:
- Inversion of dependencies and their connections to ports and adapters (hexagonal/clean architecture)
- The contrast between Entities, Value Objects, and Aggregates in domain-driven design
- Patterns of Repository and Unit of Work for Persistent Storage
- The message bus, events, and commands
- Separation of command-query responsibilities (CQRS)
- Reactive microservices and event-driven architecture
Author: Harry J.W. Percival and Bob Gregory
Link to buy: https://www.amazon.com/Architecture-Patterns-Python-Domain-Driven-Microservices-dp-1492052205/dp/1492052205/
Ratings: 4.6 out of 5 stars (from 299 reviews)
Best Sellers Rank: #80,570 in Books
#17 in Computer Hardware Design & Architecture
#48 in Cloud Computing (Books)
#51 in Software Design & Engineering