Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Domain Driven Design
Search
Buzzvil
December 12, 2018
350
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Domain Driven Design
Buzzvil
December 12, 2018
More Decks by Buzzvil
See All by Buzzvil
220903_GFS
buzzvil
0
680
Git 해부하기 2 + 3
buzzvil
0
76
Metastable Failure
buzzvil
0
400
Git 해부하기
buzzvil
0
100
Introduction to Plate Solving
buzzvil
0
93
Airbnb Minerva
buzzvil
0
580
Shape up 방법론
buzzvil
0
1.1k
Buzzvil Billing Data Pipeline
buzzvil
0
750
Journey of Dash's release-cycle
buzzvil
0
310
Featured
See All Featured
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
480
Paper Plane
katiecoart
PRO
3
53k
GraphQLとの向き合い方2022年版
quramy
50
15k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
67
58k
Odyssey Design
rkendrick25
PRO
2
800
Facilitating Awesome Meetings
lara
57
7.1k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
340
Designing for Timeless Needs
cassininazir
1
470
We Have a Design System, Now What?
morganepeng
55
8.3k
Faster Mobile Websites
deanohume
310
32k
From π to Pie charts
rasagy
0
360
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
240
Transcript
DOMAIN DRIVEN DESIGN DDD
BY ERIC EVANS
150 PAGES
WHAT IS DOMAIN? • Business or whatever activity we are
trying to assist with the software
• Assembly parts != Car • Vision • Specification •
Architecture
• Communication between experts & developers • Develop model together
UBIQUITOUS LANGUAGE • Model driven: Based on the Domain Model
• Building up a common, rigorous language between developers and users • UML • Software doesn't cope well with ambiguity
BOUNDED CONTEXT • Model gets bigger • Bound context •
Domain & sub domain Domain Sub Domain Service Sub Domain Service Sub Domain Service
• Product in Catalog domain • Product in Stock Management
domain Product image, title, price product code, storage
• Subdomain has its own model • Each model has
bounded context
BUILDING BLOCKS Model Driven Development
LAYERED ARCHITECTURE
ENTITY • Not defined by their attributes • Continuity •
Identity
VALUE OBJECT • These objects describe characteristics of a thing.
• Immutable during lifecycle
SERVICE • oo manger • significant process or transformation in
the domain is not a responsibility of an ENTITY or VALUE OBJECT, add SERVICE • The interface is defined in terms of other elements in the domain model • Stateless
MODULE • Highly cohesive • Low coupling • Derived from
the Ubiquitous Language
AGGREGATE • Logical boundary for things that can change in
a business transaction of a given context. • Reduce many to many relationship • Root: outside objects holds references to
AGGREGATE
FACTORY • Produces complicated aggregates or sometimes also entities and
value objects
REPOSITORY • Interfaces for storing and retrieving Aggregate Roots
• Refactoring • Maintaining model integrity • …
THANK YOU!