4

DDD是什么

领域驱动设计(Domain Driven Design) 是一种从系统分析到软件建模的一套方法论。以领域为核心驱动力的设计体系。

为什么要用DDD

  • 面向对象设计,数据行为绑定,告别贫血模型
  • 优先考虑领域模型,而不是切割数据和行为
  • 准确传达业务规则
  • 代码即设计
  • 它通过边界划分将复杂业务领域简单化,帮我们设计出清晰的领域和应用边界,可以很容易地实现业务和技术统一的架构演进

DDD核心概念的落地

概念这里不多讲,可以看上一篇的笔记。主要讲落地

1. 通过事件风暴划分限界上下文、识别实体

事件风暴是什么?

事件风暴是DDD推荐的一种可以迅速高效分解业务领域,完成建模的方法。

首先事件风暴是一项团体活动,人数不宜太多。参与的人员应该包括 业务专家(业务人员或产品)、开发人员、测试人员、DDD专家等项目团队成员。

具体落地我是参考这篇文章

运用事件风暴进行领域分析建模

事件风暴要产出什么?

  1. 统一通用语言
  2. 识别实体
  3. 定义聚合
  4. 划分限界上下文

事后我们可以用一张表格整理产出的领域对象及其属性
WX20191130-190005.png

公司项目的表格不方便放出来,找个 欧创新 大佬的图替代一下
图源


夙梦流尘
627 声望42 粉丝

按摩最专业的java程序猿