Update 101-domain-driven-design.md (#1336)

* Update 101-domain-driven-design.md

* Update content/roadmaps/101-backend/content/114-design-and-development-principles/101-domain-driven-design.md

Co-authored-by: Kamran Ahmed <kamranahmed.se@gmail.com>
pull/1343/head
Ehsan A. Kian 2 years ago committed by GitHub
parent 39fc32559e
commit 0f1ba869ea
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 16
      content/roadmaps/101-backend/content/114-design-and-development-principles/101-domain-driven-design.md

@ -1 +1,15 @@
# Domain driven design
# 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='Original Paper' href='https://matfrs2.github.io/RS2/predavanja/literatura/Avram%20A,%20Marinescu%20F.%20-%20Domain%20Driven%20Design%20Quickly.pdf'>Domain Driven Design Quickly</BadgeLink>

Loading…
Cancel
Save