《领域驱动设计 软件核心复杂性应对之道:注释版》PDF下载

  • 购买积分:16 如何计算积分?
  • 作  者:(美)埃文斯(Evans,E.)著;孙向晖注释
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2007
  • ISBN:7115156182
  • 页数:530 页
图书介绍:本书向读者提供了领域驱动设计的系统化方法,展现了针对设计的可扩展的最佳实践集合,展示了通过经验验证过的技术以及处理软件开发项目面对的复杂领域的基本原则。本书围绕设计和开发的实践,结合若干真实项目中的案例,向读者阐述如何在真实的软件开发中应用领域驱动设计。在注释内容中,对案例背景、相关知识和作者要体现的要点做了重点的阐述,并将注释者在软件工程中宝贵的实践经验与读者共同分享,以便帮助读者对“领域驱动”这一主题进行发散性的、系统化的思考。

第1部分 让领域模型发挥作用 7

第1章 汲取知识 7

有效建模的因素 12

知识汲取 13

持续学习 15

体现知识内涵的设计 17

深层模型 20

第2章 沟通和语言的使用 23

通用语言 24

大声读出模型 30

一个团队,一种语言 32

文档和图 35

用于解释的模型 41

第3章 将模型和实现相绑定 45

模型驱动设计 47

建模范型和工具支持 50

凸现主题:为什么模型对用户很关键 57

实践型的建模人员 60

第2部分 模型驱动设计的构造块 67

第4章 分离出领域 67

分层架构 68

领域层中存放着模型 75

智能用户界面反模式 76

其他类型的隔离 79

第5章 模型在软件中的表现形式 81

关联 82

实体(也称为引用对象) 89

值对象 97

服务 104

模块(也称为包) 109

建模范型 116

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

聚合 125

工厂 136

资源库 147

为关系型数据库设计对象 159

第7章 使用语言:扩展案例 163

货物运输系统简介 163

分离出领域:应用简介 166

区分实体和值对象 167

运输领域内的关联设计 169

聚合的边界 170

选择资源库 172

场景遍历 173

对象的创建 174

停下来进行重构:Cargo聚合的另一种设计 177

运输模型中的模块 179

引入新特性:配额检查 181

小结 186

第3部分 面向更深层理解的重构 193

第8章 突破 193

关于突破的故事 194

机会 201

着眼于根本 201

尾声:一连串的新思维 202

第9章 隐含概念显式化 205

挖掘概念 206

如何对不明显的概念建模 219

第10章 柔性设计 243

释意接口 246

无副作用函数 250

断言 255

概念轮廓 260

独立类 265

闭合操作 268

声明式设计 270

声明式风格的设计 273

攻击的角度 282

第11章 应用分析模式 293

第12章 关联设计模式和模型 309

战略(也称为策略) 311

组合 315

为什么不用FLYWEIGHT 320

第13章 面向更深层理解的重构 321

开始 321

探索团队 322

前期的技巧 323

针对开发人员的设计 324

时机 324

视危机为机会 325

第4部分 战略性设计 331

第14章 保持模型的完整性 331

限界上下文 335

持续集成 341

上下文图 344

限界上下文之间的关系 352

共享内核 354

顾客/供应商开发团队 356

追随者 361

防腐层 364

隔离方式 371

开放主机服务 374

公开发布的语言 375

盲人摸象 378

选择模型上下文的策略 381

转换 389

第15章 精炼 397

核心领域 400

扩大精炼的范围 404

通用子域 406

领域愿景声明 415

“高亮”的核心 417

内聚机制 422

按照声明式风格精炼 426

隔离的核心 428

抽象核心 435

深层模型的精炼 436

选择重构的目标 437

第16章 大规模结构 439

循序渐进 444

系统隐喻 447

职责分层 450

知识层级 465

可插拔的组件框架 475

结构的约束 480

重构到合适的结构 481

第17章 综合性战略应用 485

大规模结构和限界上下文结合 485

大规模结构和精炼结合 488

先评估 490

谁来制定策略 490

战略性设计决策的6个要点 492

总结 507

附录:书中的模式 507

词汇表 511

参考资料 515

图片说明 517

索引 519