I'm starting Eric Evan’s book on Domain-Driven Design (DDD), which I got highly recommended.
In the saying of the DDD forum "Domain-Driven design is not a technology or a methodology, but rather a way of thinking and a set of priorities (...) to deal with complicated domains."
The premise of DDD seems to be:
- Focus on domain and domain logic
- Use a model to base designs on complex domains.
Before diving any further into the book I first checked out this two great presentations. They where recorded at the JAOO conference, where Eric gave an overview on Domain-driven design.
DDD: Putting the model to work
This talk outlines the foundations of DDD, including:
- How to chose your models
- How multiple models coexist
- How patterns can help avoid the common pitfalls
This talk introduces two broad principles for strategic design, namely:
- Context mapping. Addressing different model needs.
- Core domain. Focusing on the right sub-domains for modeling.