知识卡片

领域的本质是边界:DDD为什么反复强调边界

普通读书笔记卡

内容

汉语词典对”领域”的解释是”从事一种专门活动或事业的范围、部类或部门”,百度百科的解释是”一种特定的范围或区域”,两者共同的关键词是”范围”。DDD里的领域正是这个意思:领域就是用来确定范围的,范围即边界——在研究和解决业务问题时,DDD按一定规则对业务领域细分,细分到一定程度后,把要解决的问题限定在一个特定边界内,在这个边界内构建领域模型、再用代码实现该模型来解决对应的业务问题。简言之,DDD的领域就是这个边界内要解决的业务问题域。这个定义解释了为什么DDD在设计过程中会反复强调”边界”这个词——领域本身的定义就等价于边界,划分领域这件事本质上就是在划边界,脱离边界谈”领域”是没有意义的。理解这一点,就能理解DDD后续所有关于限界上下文、聚合边界的讨论,都是同一个母题(划定合适的问题范围)在不同层次上的具体展开,而不是彼此孤立的概念。

参考来源

- 位置:《中台架构与实现:基于DDD和微服务》第5章《领域和子域:有效分解问题域》"5.1 领域的基本概念"(源文件:_epub-src/OEBPS/Text/chapter3-1-1.xhtml) - 结论依据:原文说明"我们先看一下汉语词典中对领域(Domain)的解释:'领域是从事一种专门活动或事业的范围、部类或部门。'……这两个解释都有一个共同的词:'范围'。对了!领域就是用来确定范围的,范围即边界。这也是为什么DDD在设计过程中不断强调边界的原因",直接支撑本卡片结论。 - 原始内容:领域就是用来确定范围的,范围即边界。这也是为什么DDD在设计过程中不断强调边界的原因……简言之,DDD的领域就是这个边界内要解决的业务问题域。