computer-scienceangular-roadmapbackend-roadmapblockchain-roadmapdba-roadmapdeveloper-roadmapdevops-roadmapfrontend-roadmapgo-roadmaphactoberfestjava-roadmapjavascript-roadmapnodejs-roadmappython-roadmapqa-roadmapreact-roadmaproadmapstudy-planvue-roadmapweb3-roadmap
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
15 lines
1.2 KiB
15 lines
1.2 KiB
# Domain-Driven Design |
|
|
|
Domain-driven design (DDD) is a software design approach focusing on modeling software to match a domain according to input from that domain's experts. |
|
|
|
In terms of object-oriented programming, it means 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 like LoanApplication and Customer, and methods such as AcceptOffer and Withdraw. |
|
|
|
DDD connects the implementation to an evolving model and it is predicated on the following goals: |
|
|
|
- Placing the project's primary focus on the core domain and domain logic; |
|
- Basing complex designs on a model of the domain; |
|
- Initiating a creative collaboration between technical and domain experts to iteratively refine a conceptual model that addresses particular domain problems. |
|
|
|
<ResourceGroupTitle>Free Content</ResourceGroupTitle> |
|
|
|
<BadgeLink colorScheme='blue' badgeText='Official Docs' href='https://matfrs2.github.io/RS2/predavanja/literatura/Avram%20A,%20Marinescu%20F.%20-%20Domain%20Driven%20Design%20Quickly.pdf'>Domain Driven Design Quickly</BadgeLink>
|
|
|