知识卡片
限界上下文:限定通用语言无歧义的强制业务边界
内容
限界上下文(Bounded Context)可以拆成”限界”(具体的领域边界)和”上下文”(业务语义所在的环境)两个词来理解:通过限定领域的上下文边界,项目团队就能在这个特定的业务边界内用无歧义的通用语言交流——限界上下文是用来在限定的环境内封装通用语言和领域对象,保证领域内的术语、对象有确切含义、没有语义二义性的一个业务边界,它定义了领域模型的边界和业务适用范围,让团队所有成员明确知道什么该在这个领域模型里实现、什么不该在这里实现。划定限界上下文时通常遵循领域业务职责单一原则:与实现该领域职能相关的对象都放进同一个限界上下文,与该职能无关的对象都排除在边界之外,限界上下文因此是一个强制边界,用来保证领域职责的单一性和领域模型的纯洁性。书中用企业组织架构做类比:企业按职能边界设置部门(人力资源部、财务会计部等),部门内聚集与该职能相关的所有角色,各司其职共同完成部门职责,这个部门职能边界就相当于限界上下文边界——如果为了缩减编制把互不相干的职能塞进同一个部门,对外提供服务时就容易让人困惑甚至闹笑话,这就是一个不好的限界上下文边界。
参考来源
- 位置:第6章《限界上下文:定义领域边界的利器》"6.2 什么是限界上下文"(源文件:_epub-src/OEBPS/Text/chapter3-2-2.xhtml)
- 结论依据:原文说明"限界上下文就是在限定的上下文环境内,用来封装通用语言和领域对象,保证领域内的一些术语、领域对象等有一个确切的含义,没有语义二义性的一个业务边界……举个例子,其实企业在设置组织架构(如部门、处室等)时,就是在定义企业的限界上下文边界",直接支撑本卡片结论。
- 原始内容:限界上下文就是在限定的上下文环境内,用来封装通用语言和领域对象,保证领域内的一些术语、领域对象等有一个确切的含义,没有语义二义性的一个业务边界……企业在设置组织架构(如部门、处室等)时,就是在定义企业的限界上下文边界。