QRCode
1
DDD with Clean Architecture
0 1
2
?
3
,
4
?
5
6
7
…
PM
?
8
,
,
,
||
9
“The goal of software architecture is to minimize
the human resources required to build and
maintain the required system.”
Robert C. Martin – Clean Architecture
minimize
10
11
12
?
,
?
!
13
14
-
15
+:
-:
16
1st.
2st.
3st.
17
-
18
1st.
2st.
3st.
1st.
2st.
3st.
1st.
2st.
3st.
1st.
2st.
3st.
1st.
2st.
3st.
1st.
2st.
3st.
19
20
…
21
…
22
?
23
24
?
!
!
DDD !
25
•
•
•
26
?
27
28
,
29
?
30
….
31
(Inverse of Control)
32
33
34
35
Vision Planning Strategy Doing Teamwork Consistency Success
/
36
-
37
?
38
-
39
?
40
-
41
?
42
-
43
?
44
45
?
46
47
Component +
Layer +
• : Component
• : Layer
48
-
49
50
-
51
,
52
Coding , !
53
54
-
55
- :
56
- &
57
58
59
SOLID DRY
60
SOLID
61
DRY ?
62
DRY
“Every piece of knowledge must have a single,
unambiguous, authoritative representation
within a system”
Andy Hunt – The Pragmatic Programmer
63
DRY Code …
64
DRY - &
,
65
66
I/O,
,
67
Clean
Domain Model
68
-
69
, =0
70
Clean Architecture
(Entities)
71
?
Capture
Embedded
Protect
Capture:
Embedded:
Protect:
72
(Capture)- (1)
• (Aircraft) (Departure), (Destination)
• ,
73
(Capture)- (2)
• (Route)
• (Departure)
74
(Capture)- (3)
• , (Fix)
• 3 (3DPoint)
75
(Capture)- (4)
• , 2D (2DPoint)
76
DDD Aggregate
77
,
, - ,
! ?
78
79
(Business Rule)
,
80
81
- Clean Architecture
82
?
83
- Port and Adapter
84
DDD
85
86
-Use Case
87
Clean Architecture
88
(Core Subdomain)
(Supporting Subdomain)
(Supporting Subdomain)
(General Subdomain)
(Problem Domain)
Clean Architecture +
DDD?
89
90
91
(Pattern)
An architectural pattern is a general, reusable solution to a commonly occurring problem in
software architecture within a given context. Architectural patterns are often documented as
software design patterns.
Following traditional building architecture, a ‘software architectural style’ is a specific method
of construction, characterized by the features that make it notable
-- by Wiki
92
(Style)
An architectural style defines: a family of systems in terms of a pattern of structural
organization; a vocabulary of components and connectors, with constraints on
how they can be combined.
Architectural styles are reusable ‘packages’ of design decisions and constraints that are applied
to an architecture to induce chosen desirable qualities.
-- by Wiki
93
94
Name
ContextProblem
Solution Force
Resulting
Context
95
Recap
•
•
•
• ,
• : (CEP)
Capture + Embedded + Protect
•
• /
96
,
97

More Related Content

PDF
1 rik van bruggen - intro and state of the graph
PDF
What is C3D?
PDF
Padang engineering computer course
PDF
Explicit architecture
PDF
Debugging tricks you wish you knew Tamir Dresher - Odessa 2019
PPTX
About me - Rothschild Partnerships
PPTX
About me - Atidna
PDF
Medan engineering computer course
1 rik van bruggen - intro and state of the graph
What is C3D?
Padang engineering computer course
Explicit architecture
Debugging tricks you wish you knew Tamir Dresher - Odessa 2019
About me - Rothschild Partnerships
About me - Atidna
Medan engineering computer course

Similar to Ddd(meetup 2) ddd with clean architecture (11)

PDF
Makassar engineering computer course
PDF
Clean architecture: Android
PDF
RDataMining slides-r-programming
PPTX
Applications3d Geomagic
PDF
Kendari engineering computer course
PDF
Banjarmasin engineering computer course
PPTX
COMPUTER AIDED DESIGN - CAD
PPTX
TechTalk - Introduction to software design and architecture
PDF
Overcoming Issues of 3D Software Visualization through Immersive Augmented Re...
PDF
Better Software Developers
PPTX
MINI PROJECT BIM 15DUB21F1014 SLIDE.pptx
Makassar engineering computer course
Clean architecture: Android
RDataMining slides-r-programming
Applications3d Geomagic
Kendari engineering computer course
Banjarmasin engineering computer course
COMPUTER AIDED DESIGN - CAD
TechTalk - Introduction to software design and architecture
Overcoming Issues of 3D Software Visualization through Immersive Augmented Re...
Better Software Developers
MINI PROJECT BIM 15DUB21F1014 SLIDE.pptx
Ad

More from Kim Kao (13)

PDF
Enlarge influence by Participating in communities
PDF
2019 08-01-i ddd-studygroup-appendix
PDF
跟著Actor Model來一場與DDD的豔遇
PDF
2019 06-12-aws taipei summit-dev day-essential capabilities behind microservices
PDF
Ddd by-clark chou
PDF
My past-3 yeas-developer-journey-at-linkedin-by-iantsai
PDF
2019 04-25-agile communitymeetup-essentialcapabilitiesbehindmicroservices
PDF
2019 03-23-2nd-meetup-essential capabilities behind microservices
PDF
2019 03-13-implementing microservices by ddd
PDF
2019-02-20-ddd taiwan-community-iddd-studygroup-1st
PDF
DDD Taiwan Community 2019 01-26-1st-meetup-why ddd matters
PDF
2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless
PDF
Legacy java ee meet lambda
Enlarge influence by Participating in communities
2019 08-01-i ddd-studygroup-appendix
跟著Actor Model來一場與DDD的豔遇
2019 06-12-aws taipei summit-dev day-essential capabilities behind microservices
Ddd by-clark chou
My past-3 yeas-developer-journey-at-linkedin-by-iantsai
2019 04-25-agile communitymeetup-essentialcapabilitiesbehindmicroservices
2019 03-23-2nd-meetup-essential capabilities behind microservices
2019 03-13-implementing microservices by ddd
2019-02-20-ddd taiwan-community-iddd-studygroup-1st
DDD Taiwan Community 2019 01-26-1st-meetup-why ddd matters
2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless
Legacy java ee meet lambda
Ad

Recently uploaded (20)

PPTX
Presentation by Samna Perveen And Subhan Afzal.pptx
PPTX
Full-Stack Developer Courses That Actually Land You Jobs
PDF
Type Class Derivation in Scala 3 - Jose Luis Pintado Barbero
PDF
E-Commerce Website Development Companyin india
DOCX
Modern SharePoint Intranet Templates That Boost Employee Engagement in 2025.docx
PPTX
DevOpsDays Halifax 2025 - Building 10x Organizations Using Modern Productivit...
PDF
What Makes a Great Data Visualization Consulting Service.pdf
PPTX
HackYourBrain__UtrechtJUG__11092025.pptx
PDF
MiniTool Power Data Recovery 12.6 Crack + Portable (Latest Version 2025)
PPTX
Python is a high-level, interpreted programming language
PPTX
CNN LeNet5 Architecture: Neural Networks
PPTX
Chapter 1 - Transaction Processing and Mgt.pptx
PDF
AI-Powered Fuzz Testing: The Future of QA
PPTX
Human-Computer Interaction for Lecture 2
PPTX
Computer Software - Technology and Livelihood Education
PPTX
DevOpsDays Halifax 2025 - Building 10x Organizations Using Modern Productivit...
PDF
CapCut PRO for PC Crack New Download (Fully Activated 2025)
PDF
Sun and Bloombase Spitfire StoreSafe End-to-end Storage Security Solution
PPTX
Bista Solutions Advanced Accounting Package
PPTX
4Seller: The All-in-One Multi-Channel E-Commerce Management Platform for Glob...
Presentation by Samna Perveen And Subhan Afzal.pptx
Full-Stack Developer Courses That Actually Land You Jobs
Type Class Derivation in Scala 3 - Jose Luis Pintado Barbero
E-Commerce Website Development Companyin india
Modern SharePoint Intranet Templates That Boost Employee Engagement in 2025.docx
DevOpsDays Halifax 2025 - Building 10x Organizations Using Modern Productivit...
What Makes a Great Data Visualization Consulting Service.pdf
HackYourBrain__UtrechtJUG__11092025.pptx
MiniTool Power Data Recovery 12.6 Crack + Portable (Latest Version 2025)
Python is a high-level, interpreted programming language
CNN LeNet5 Architecture: Neural Networks
Chapter 1 - Transaction Processing and Mgt.pptx
AI-Powered Fuzz Testing: The Future of QA
Human-Computer Interaction for Lecture 2
Computer Software - Technology and Livelihood Education
DevOpsDays Halifax 2025 - Building 10x Organizations Using Modern Productivit...
CapCut PRO for PC Crack New Download (Fully Activated 2025)
Sun and Bloombase Spitfire StoreSafe End-to-end Storage Security Solution
Bista Solutions Advanced Accounting Package
4Seller: The All-in-One Multi-Channel E-Commerce Management Platform for Glob...

Ddd(meetup 2) ddd with clean architecture