Implementing Domain-Driven Design
English
By (author): Vaughn Vernon
Randy Stafford, Architect At-Large, Oracle Coherence Product Development
This book is a must-read for anybody looking to put DDD into practice.
Udi Dahan, Founder of NServiceBus
Implementing Domain-Driven Design presents a top-down approach to understanding domain-driven design (DDD) in a way that fluently connects strategic patterns to fundamental tactical programming tools. Vaughn Vernon couples guided approaches to implementation with modern architectures, highlighting the importance and value of focusing on the business domain while balancing technical considerations.
Building on Eric Evans seminal book, Domain-Driven Design, the author presents practical DDD techniques through examples from familiar domains. Each principle is backed up by realistic Java examplesall applicable to C# developersand all content is tied together by a single case study: the delivery of a large-scale Scrum-based SaaS system for a multitenant environment.
The author takes you far beyond DDD-lite approaches that embrace DDD solely as a technical toolset, and shows you how to fully leverage DDDs strategic design patterns using Bounded Context, Context Maps, and the Ubiquitous Language. Using these techniques and examples, you can reduce time to market and improve quality, as you build software that is more flexible, more scalable, and more tightly aligned to business goals.
Coverage includes
- Getting started the right way with DDD, so you can rapidly gain value from it
- Using DDD within diverse architectures, including Hexagonal, SOA, REST, CQRS, Event-Driven, and Fabric/Grid-Based
- Appropriately designing and applying Entitiesand learning when to use Value Objects instead
- Mastering DDDs powerful new Domain Events technique
- Designing Repositories for ORM, NoSQL, and other databases