Strategic Domain Driven Design in CakePHP How to Get Organized and Get Started
summary
A practical recipe for starting Strategic DDD in CakePHP: create a bounded_context folder per domain, put Application Services, Domain Model, Factory and Repository inside, and build a tiny feature (a count events command) wired by a factory to R-prefixed repositories. Implementation uses CakePHP table models only inside repositories, a manual transaction+flush for invariants, and an in-memory capture of exception reports flushed outside the transaction. The approach handles the jump from 30 to 30,000 users and proves workable after a three‑year rewrite.
AI-written summary · about
chapters (11)
- 0:00The Plan
- 3:11Marketable Skill
- 13:23Tactical Patterns
- 19:25Application Service
- 20:06Protective Boundaries Folders are software layers
- 21:42Boundary Crossing
- 25:14The Crucial Concept DDD's Aggregate pattern
- 28:47Aggregate's Power At design not implementation
- 39:27Repository Manual transaction
- 41:50Record Exception
- 45:18Summary
related talks
44mStrategic Domain-Driven Design for dummies
39mSimply About the Complex — Domain Driven Design
01h 00mFrom Domain Driven Design DDD to Delivery
45mDon't Overdose on Domain-Driven Design
50mGetting Started with Domain-Driven Design without Fighting the Wrong Battles
54mHexagonal Architecture in DDD
48mDomain Driven Design: The Good Parts
39mLessons Learned from 10+ Years with Domain Driven Design
