Let's Give DDD Back to Developers
summary
A legacy 140-line reservation method is incrementally refactored into domain objects and adapters: BigDecimal pricing is turned into an Amount value object and ratios into a Rate, XML printing is moved to a ReservationTicketPrinter in an exposition layer, and repository adapters plus an AllocationQuotaSpecification enforce VIP quotas. Refactor steps use IntelliJ extract/move/type-migration tools and an ApprovalTests Golden Master to keep tests stable while changing behavior; a pending-vs-assigned bug is fixed and an allocator aggregate with a contiguous-seat algorithm is developed and verified by tests.
AI-written summary · about
related talks
42mHigh-Speed DDD (revisited)
46mTechnically DDD
09mThinking out of the box when DDD is not enough -
49mDomain-Driven Refactoring
42mTo DDD or not to DDD? Domain modelling case study
02h 31mSlice & Dice your Monolith with Domain Driven Design
53mTDD & DDD from the Ground Up Live Coding
39mLessons Learned from 10+ Years with Domain Driven Design
