What is Domain-Driven Design?
Over the last decade or two, the philosophy of Domain-Driven Design, or DDD for short, has developed as an undercurrent in the object community. The premise of DDD is two-fold:
- For most software projects, the primary focus should be on the domain and domain logic
- Complex domain designs should be based on a model.
To accomplish that goal, teams need an extensive set of design practices, techniques and principles. Refining and applying these techniques will be the subject of discussion for this site, generally starting from the language of patterns laid out in Domain-Driven Design, by Eric Evans.