图书介绍

领域驱动设计:软件核心复杂性应对之道PDF|Epub|txt|kindle电子书版本网盘下载

领域驱动设计:软件核心复杂性应对之道
  • (美)ERIC EVANS著 陈大峰 张泽鑫等译 著
  • 出版社: 清华大学出版社
  • ISBN:
  • 出版时间:2006
  • 标注页数:390页
  • 文件大小:28MB
  • 文件页数:408页
  • 主题词:

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

领域驱动设计:软件核心复杂性应对之道PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

目录5

第Ⅰ部分 让领域模型发挥作用第1章 消化知识5

1.1 有效建模的因素9

1.2 知识消化10

1.3 持续学习11

1.4 知识丰富的设计12

1.5 深层模型15

第2章 交流及语言的使用17

2.1 通用语言17

2.2 利用对话改进模型22

2.3 一个团队,一种语言24

2.4 文档和图25

2.4.1 书面的设计文档27

2.4.2 执行的基础29

2.5 说明性模型29

第3章 将模型和实现绑定32

3.1 模型驱动设计33

3.2 建模范型和工具支持36

3.3 突出主旨:为什么模型对用户很关键41

3.4 实践型建模人员43

第Ⅱ部分 模型驱动设计的构建块第4章 分离领域47

4.1 分层架构47

4.1.1 层间的联系51

4.1.2 架构框架51

4.2 模型属于领域层52

4.3 其他种类的隔离55

第5章 软件中的模型描述56

5.1 关联57

5.2 实体(又称引用对象)62

5.2.1 实体建模65

5.2.2 设计标识操作66

5.3 值对象68

5.3.1 设计值对象71

5.3.2 设计包含值对象的关联73

5.4 服务74

5.4.1 服务和分隔的领域层75

5.4.3 访问服务77

5.5 模块(包)77

5.4.2 粒度77

5.5.1 敏捷的模块79

5.5.2 基础结构驱动打包的缺陷80

5.6 建模范式82

5.6.1 对象范式的优势82

5.6.2 对象世界中的非对象84

5.6.3 在混合范式中使用模型驱动设计85

第6章 领域对象的生命周期87

6.1 聚合88

6.2 工厂96

6.2.1 工厂及其应用场所的选择99

6.2.2 只需构造函数的情况101

6.2.3 接口的设计102

6.2.6 存储对象的重建103

6.2.5 实体工厂与值对象工厂103

6.2.4 如何放置不变量的逻辑103

6.3 仓储105

6.3.1 查询仓储109

6.3.2 了解仓储实现的必要性111

6.3.3 实现仓储111

6.3.4 在框架内工作113

6.3.5 与工厂的关系113

6.4 为关系数据库设计对象115

第7章 使用语言:扩展示例117

7.1 货物运输系统概述117

7.2 隔离领域:系统简介119

7.3 区分实体和值对象120

7.4 运输领域中的关联设计121

7.5 聚合的边界123

7.6 选择仓储124

7.7 场景概述125

7.7.1 应用特性示例:改变一件货物的目的地126

7.7.2 应用特性示例:重复业务126

7.8 对象的创建126

7.8.1 Cargo的工厂和构造函数126

7.8.2 添加一个Handling Event127

7.9 停下来重构:Cargo聚合的另一种设计129

7.10 运输模型中的模块131

7.11 引入新特性:配额检查133

7.11.1 连接两个系统134

7.11.2 改进模型:划分业务135

7.12 小结137

7.11.3 性能调整137

第Ⅲ部分 面向更深层理解的重构第8章 突破143

8.1 关于突破的故事144

8.1.1 中看不中用的模型144

8.1.2 突破146

8.1.3 更深层的模型148

8.1.4 冷静的决定149

8.1.5 成效150

8.2 时机150

8.3 着眼于根本151

8.4 尾声:一连串的新理解151

9.1 概念挖掘153

第9章 隐含概念转变为显式概念153

9.1.1 倾听表达用语154

9.1.2 检查不协调之处157

9.1.3 研究矛盾之处162

9.1.4 查阅书籍162

9.1.5 尝试,再尝试164

9.2 如何建模不太明显的概念164

9.2.1 显式的约束165

9.2.2 作为领域对象的流程167

9.2.3 规格168

9.2.4 规格的应用和实现171

第10章 柔性设计184

10.1 释意接口186

10.2 无副作用函数190

10.3 断言194

10.4 概念轮廓197

10.5 孤立类201

10.6 操作封闭203

10.7 声明性设计205

10.8 一个声明性风格的设计207

10.9 攻击角度215

10.9.1 切分子领域215

10.9.2 尽可能利用现成的形式216

第11章 应用分析模式225

第12章 把设计模式和模型联系起来237

12.1 策略238

12.2 组合241

12.3 为什么不用Flyweight?245

第13章 向更深层理解重构247

13.1 发起重构247

13.2 探索团队248

13.3 前期工作249

13.4 针对开发人员设计249

13.5 时机选择250

13.6 将危机视为机会250

第Ⅳ部分 战略性设计255

第14章 维护模型完整性255

14.1 限界上下文257

14.2 持续集成261

14.3 上下文映射263

14.3.1 在上下文边界上的测试269

14.3.2 组织和文档化上下文映射269

14.4 限界上下文之间的关系270

14.5 共享内核271

14.6 顾客/供应商开发团队272

14.7 同流者275

14.8 防腐层277

14.8.1 设计防腐层的接口279

14.8.2 实现防腐层279

14.8.3 一个关于警戒的故事282

14.9 隔离方式282

14.11 公布语言284

14.10 开放主机服务284

14.12 盲人摸象287

14.13 选择模型上下文的策略290

14.13.1 团队或更高层的决策290

14.13.2 把自己放在上下文中291

14.13.3 转换边界291

14.13.4 接受我们不能改变的东西:描绘外部系统292

14.13.5 与外部系统的关系292

14.13.6 在设计系统293

14.13.7 满足不同模型的特别需要293

14.13.8 部署294

14.13.9 权衡295

14.13.10 考虑项目已经进行的情况295

14.14.1 合并上下文:隔离方式→共享内核296

14.14 转换296

14.14.2 合并上下文:共享内核→持续集成297

14.14.3 逐步淘汰原有系统298

14.14.4 开放主机服务→公布语言299

第15章 精炼301

15.1 核心领域302

15.1.1 选择核心305

15.1.2 谁来负责精炼工作305

15.2 精炼的逐步升级306

15.3 通用子域307

15.3.1 通用不一定可重用312

15.4 领域愿景声明313

15.3.2 项目风险管理313

15.5 突出核心315

15.5.1 精炼文档316

15.5.2 把核心标记出来317

15.5.3 把精炼文档作为开发过程的工具318

15.6 内聚机制319

15.6.1 通用子域与内聚机制320

15.6.2 属于核心领域的机制321

15.7 精炼到声明性风格321

15.8 隔离核心322

15.8.1 创建隔离核心的代价323

15.8.2 推进团队决策323

15.9 抽象核心328

15.11 选择重构的目标329

15.10 深层模型精炼329

第16章 大比例结构330

16.1 渐进顺序333

16.2 系统隐喻335

16.3 职责层337

16.4 知识级别349

16.5 插件框架356

16.6 结构的约束360

16.7 重构到合适的结构361

16.7.1 最小化362

16.7.2 交流和自律362

16.7.3 结构重组产生柔性设计362

16.7.4 精炼为开发指路363

17.1 大比例结构和限界上下文的结合364

第17章 综合应用战略性设计364

17.2 大比例结构和精炼的结合367

17.3 首先进行评估369

17.4 由谁制定策略369

17.4.1 在开发过程中自发产生369

17.4.2 以客户为中心的架构团队370

17.5 制定战略性设计决策的6个要点370

17.5.1 技术框架同样如此373

17.5.2 提防总体规划374

第18章 尾声375

附录A 关于模式380

附录B 术语表383

附录C 参考文献387

附录D 关系图389

热门推荐