Domain Driven Design Subdomain
I love software books that are both old and still relevant.
Domain driven design subdomain. Domain driven design ddd has been around since eric evans published his book about the subject in 2003. A domain is consists of multiple subdomains. The domain driven design is a site created by felipe de freitas batista to bring information and knowledge to everyone about developing software using ddd.
Domain driven design ddd is the concept that the structure and language of software code class names class methods class variables should match the business domain for example if a software processes loan applications it might have classes such as loanapplication and customer and methods such as acceptoffer and withdraw. My intention in this post is to use. Subdomain a domain consists of several subdomains that refer to different parts of the business logic.
Vaughn vernon s implementing domain driven design focuses on strategic design from the outset. Define services corresponding to domain driven design ddd subdomains. Anemic model x rich model.
Chapter 2 talks in detail about how a domain is divided into bounded contexts and chapter 3 is the best source on drawing context maps. For example there would be an accounting bounded context that expresses the model of an accounting sub domain. Duplicates showed up in the database some information was not saved at all and you could run into optimistic locking errors anywhere and anytime.
We can say that domain is a scope where one works and how one works in other words it refers to the space of the problem for which we are acting its entities its behavior. Ideally there would be full alignment between a sub domain and a corresponding bounded context. 3 minutes domain is the most vital concept of ddd understanding what is domain is essential for us to accomplish what we call domain distillation which we will address with example in future posts.
Domain driven design is the idea of solving problems of the organization through code. 5 minutes as i showed in a previous post anemic model causes disastrous effects on your project. On the other hand you can use emergent design when the challenge is simple.