/blog / #software-architecture
$ tag: #software-architecture
10 post(s)
$ Related series
$ Posts in this tag
18 min readNEW
The Application Layer, the Transaction, and a Working API
Application layer in Symfony 8: use cases on a Messenger command bus, the transaction boundary in config, optimistic locking and RFC 9457 errors. Part 2.
DDD, CQRS and Hexagonal Architecture in Symfony 8 · part 2#ddd#hexagonal-architecture#symfony#php#cqrs#messenger#software-architecture15 min readNEW
The Domain Model, and the Only Rule That Matters
DDD domain model in PHP 8.5 and Symfony 8: keep the container out of the domain, and choose Doctrine ORM or DBAL with the costs on the table. Series part 1.
DDD, CQRS and Hexagonal Architecture in Symfony 8 · part 1#ddd#hexagonal-architecture#symfony#php#doctrine#software-architecture7 min read
Alternatives to Domain-Driven Design, and When to Use Them
DDD is not a default. The real alternatives, transaction script, active record, table module and tactical-only DDD, and how to tell which you need.
4 min read
Clean Architecture: The Dependency Rule and Its Cost
Clean architecture as Robert C. Martin defined it: the dependency rule, the layers it produces, what adopting it costs, and the pitfalls on the way.
6 min read
The Pipes and Filters Architecture
Pumps, filters and pipes as a way to structure processing: what each component owns, where the pattern beats one procedure, and its blind spot.
3 min read
Event Sourcing: State as a History of Events
Storing every change as an event instead of overwriting state: how the history is replayed, where event sourcing fits, and the practices it demands.
1 min read
When DDD Fits a Project, and When It Does Not
A short note on the DDD decision: what makes a domain complex enough to be worth modelling, and why introducing it into a legacy system needs a plan.
2 min read
CQRS: Separating the Write Model from the Read Model
Part 2 of an event sourcing series: splitting commands from queries, what that fixes as data grows, and what it costs to run two models instead of one.
8 min read
Hexagonal Architecture and Domain-Driven Design, Together
Hexagonal architecture is a rule about dependency direction, not a folder layout. What ports and adapters buy you, where DDD attaches, what it costs.
2 min read
Benefits of using DDD (DDD series part 2)
Part 2 of the DDD series: what a shared vocabulary with domain experts actually buys you, and which of the claimed benefits depend on having one.