没有合适的资源?快使用搜索试试~ 我知道了~
首页Domain-Driven Design –Tackling Complexity in the Heart of Software.pdf
Domain-Driven Design –Tackling Complexity in the Heart of Softwa...
需积分: 50 35 下载量 176 浏览量
更新于2023-05-13
收藏 11.84MB PDF 举报
The software development community widely acknowledges that domain modeling is central to software design. Through domain modeling, software developers are able to express rich functionality and translate that functionality into software implementation that truly serves the needs of its users. Despi
资源详情
资源推荐
![](https://csdnimg.cn/release/download_crawler_static/12403770/bg1.jpg)
![](https://csdnimg.cn/release/download_crawler_static/12403770/bg2.jpg)
Domain-Driven Design
Tackling Complexity in the Heart of Software
Eric Evans
eric@domainlanguage.com
(415) 902-7873
(Final Manuscript, April 15, 2003)
For current draft and other information, see
www.domainlanguage.com
Copyright
©
2003, Eric Evans. All rights reserved.
![](https://csdnimg.cn/release/download_crawler_static/12403770/bg3.jpg)
(Final Manuscript, April 15, 2003) © Eric Evans, 2003 2
To Mom and Dad
![](https://csdnimg.cn/release/download_crawler_static/12403770/bg4.jpg)
(Final Manuscript, April 15, 2003) © Eric Evans, 2003 3
Table of Contents
Acknowledgements....................................................................................................................................6
Preface........................................................................................................................................................7
P a r t I.
P u t t in g t h e Do m a in Mo d e l t o Wo r k ................................ 1 2
1.
Crunching Knowledge ..................................................................................................................15
2.
Communication and the Use of Language ..................................................................................24
U
BIQUITOUS
L
ANGUAGE
............................................................................................................25
Documents and Diagrams .........................................................................................................31
3.
Binding Model and Implementation............................................................................................37
M
ODEL
-D
RIVEN
D
ESIGN
............................................................................................................38
Letting the Bones Show; Why Models Matter to Users..................................................................45
HANDS-ON MODELERS ..............................................................................................................47
P a r t II.
Bu ild in g B lo c k s o f a Mo d e l-Dr iv e n De s ig n ..................... 4 9
4.
Isolating the Domain.....................................................................................................................51
L
AYERED
A
RCHITECTURE
..........................................................................................................52
The Domain Layer is Where the Model Lives ..........................................................................56
S
MART
UI A
NTI
-P
ATTERN
.........................................................................................................57
5.
A Model Expressed in Software...................................................................................................60
Associations ..............................................................................................................................61
E
NTITIES
(
AKA
R
EFERENCE
O
BJECTS
)........................................................................................65
V
ALUE
O
BJECTS
.........................................................................................................................70
S
ERVICES
...................................................................................................................................75
M
ODULES
(
AKA
P
ACKAGES
) ......................................................................................................79
Modeling Paradigms .......................................................................................................................84
6.
The Lifecycle of a Domain Object ...............................................................................................88
A
GGREGATES
.............................................................................................................................89
F
ACTORIES
.................................................................................................................................98
R
EPOSITORIES
..........................................................................................................................106
Designing Objects for Relational Databases ...........................................................................113
7.
Using the Language in an Example: A Cargo Shipping System.............................................115
P a r t III.
Re fa c t o rin g T o w a rd De e p e r In s ig h t .......................... 1 3 3
8.
Breakthrough ..............................................................................................................................136
9.
Making Implicit Concepts Explicit............................................................................................145
Listen to Language..................................................................................................................145
Scrutinize Awkwardness.........................................................................................................148
Contemplate Contradictions....................................................................................................152
Read the Book.........................................................................................................................153
Try, Try Again ........................................................................................................................154
Expressing Less Obvious Categories of Concepts........................................................................155
Explicit Constraints.................................................................................................................155
Representing Processes as Domain Objects............................................................................157
S
PECIFICATION
.........................................................................................................................158
10.
Supple Design ..............................................................................................................................170
I
NTENTION
R
EVEALING
I
NTERFACES
.......................................................................................172
S
IDE
-E
FFECT
-F
REE
F
UNCTIONS
...............................................................................................175
A
SSERTIONS
.............................................................................................................................179
C
ONCEPTUAL
C
ONTOURS
.........................................................................................................183
S
TANDALONE
C
LASSES
............................................................................................................188
C
LOSURE OF
O
PERATIONS
........................................................................................................190
![](https://csdnimg.cn/release/download_crawler_static/12403770/bg5.jpg)
(Final Manuscript, April 15, 2003) © Eric Evans, 2003 4
Declarative Design ..................................................................................................................192
Extending S
PECIFICATIONS
in a Declarative Style ..................................................................193
Carve off Subdomains...................................................................................................................200
Draw on Established Formalisms, When You Can.......................................................................200
Example Integrating the Patterns: Shares Math ............................................................................200
11.
Applying Analysis Patterns........................................................................................................207
12.
Relating Design Patterns to the Model......................................................................................218
S
TRATEGY AKA
P
OLICY
...........................................................................................................219
COMPOSITE ..............................................................................................................................223
Why Not F
LYWEIGHT
?..................................................................................................................229
13.
Bringing the Pieces Together .....................................................................................................230
P a r t IV.
S t r a t e g ic De s ig n ........................................................ 2 3 3
14.
Maintaining Model Integrity......................................................................................................235
B
OUNDED
C
ONTEXT
................................................................................................................238
C
ONTINUOUS
I
NTEGRATION
.....................................................................................................242
C
ONTEXT
M
AP
.........................................................................................................................244
Relationships Between B
OUNDED
C
ONTEXTS
...............................................................................250
S
HARED
K
ERNEL
......................................................................................................................251
CUSTOMER
/
SUPPLIER DEVELOPMENT TEAMS
............................................................................252
C
ONFORMIST
............................................................................................................................255
ANTICORRUPTION LAYER ........................................................................................................257
S
EPARATE
W
AYS
.....................................................................................................................261
O
PEN
H
OST
S
ERVICE
................................................................................................................263
P
UBLISHED
L
ANGUAGE
............................................................................................................264
Unifying an Elephant ....................................................................................................................266
Choosing Your Model Context Strategy.......................................................................................268
Transformations............................................................................................................................273
Merging C
ONTEXTS
(S
EPARATE
W
AYS
S
HARED
K
ERNEL
) .................................................274
Merging C
ONTEXTS
(S
HARED
K
ERNEL
C
ONTINUOUS
I
NTEGRATION
).................................276
Phasing Out a Legacy System.................................................................................................277
O
PEN
H
OST
S
ERVICE
P
UBLISHED
L
ANGUAGE
.....................................................................278
15.
Distillation....................................................................................................................................279
C
ORE
D
OMAIN
.........................................................................................................................281
GENERIC SUBDOMAINS ............................................................................................................285
D
OMAIN
V
ISION
S
TATEMENT
...................................................................................................290
H
IGHLIGHTED
C
ORE
.................................................................................................................292
C
OHESIVE
M
ECHANISMS
..........................................................................................................295
Distilling to a Declarative Style ..............................................................................................297
S
EGREGATED
C
ORE
..................................................................................................................298
A
BSTRACT
C
ORE
......................................................................................................................305
Deep Models Distill ......................................................................................................................306
Choosing Refactoring Targets.......................................................................................................306
16.
Large-Scale Structure.................................................................................................................307
E
VOLVING
O
RDER
....................................................................................................................310
S
YSTEM
M
ETAPHOR
.................................................................................................................312
R
ESPONSIBILITY
L
AYERS
.........................................................................................................314
K
NOWLEDGE
L
EVEL
................................................................................................................326
P
LUGGABLE
C
OMPONENT
F
RAMEWORK
..................................................................................333
How Restrictive Should a Structure Be?.......................................................................................336
Refactoring Toward a Fitting Structure ........................................................................................337
17.
Bringing the Strategy Together .................................................................................................339
Bringing Together Large-Scale Structures and B
OUNDED
C
ONTEXTS
..........................................339
剩余360页未读,继续阅读
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/octet-stream](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/f9ce705d10d64690ac312c02d8c18419_hyzsg.jpg!1)
i落魂
- 粉丝: 17
- 资源: 27
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- BSC关键绩效财务与客户指标详解
- 绘制企业战略地图:从财务到客户价值的六步法
- BSC关键绩效指标详解:财务与运营效率评估
- 手持移动数据终端:常见问题与WIFI设置指南
- 平衡计分卡(BSC):绩效管理与战略实施工具
- ESP8266智能家居控制系统设计与实现
- ESP8266在智能家居中的应用——网络家电控制系统
- BSC:平衡计分卡在绩效管理与信息技术中的应用
- 手持移动数据终端:常见问题与解决办法
- BSC模板:四大领域关键绩效指标详解(财务、客户、运营与成长)
- BSC:从绩效考核到计算机网络的关键概念
- BSC模板:四大维度关键绩效指标详解与预算达成分析
- 平衡计分卡(BSC):绩效考核与战略实施工具
- K-means聚类算法详解及其优缺点
- 平衡计分卡(BSC):从绩效考核到战略实施
- BSC:平衡计分卡与计算机网络中的应用
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)