什么是DDD领域驱动设计的战略设计?

栏目: 后端 · 发布时间: 4年前

内容简介:它也称为战略建模,它是DDD的支柱,其主要目标是与整个项目团队(领域专家和技术团队)一起定义有界上下文,统一的无所不在语言和上下文映射。要清楚地了解战略项目是什么,您需要掌握我所谈到的每个概念。

它也称为战略建模,它是DDD的支柱,其主要目标是与整个项目团队(领域专家和技术团队)一起定义有界上下文,统一的无所不在语言和上下文映射。

要清楚地了解战略项目是什么,您需要掌握我所谈到的每个概念。

有界上下文/界定上下文

有界上下文是DDD最重要的概念之一,我们可以说这是应用领域模型表达的概念上的限制。当您尝试为大型领域建模时,您将遇到很大的困难,因为不同的人群将使用稍微不同的术语和句子来表达这些领域知识和概念,使用有界上下文,可以让人们明白:在当前上下文之外使用相同的词汇表却可能意味着不同的东西。

我们可以说,有界上下文主要是语言划界,正如[ Vaughn Vernon ]在他的书中所说的那样。重要的是要理解每个有界上下文都有自己的无所不在语言。

随着模型的发展,您将感觉需要在有界上下文之间创建关系,为此我们将使用上下文映射。

无所不在的语言

这种通用语言是一种内建模在有限背景(有界上下文)下,如该业务领域的术语和概念被识别,那就应该没有任何含糊。为了使您能够开发出高效的无所不在的语言,您需要了解业务。

无所不在的语言的一大优势是将领域专家,技术团队和参与项目的其他人聚集在一起。无所不在的语言绝不应该是领域专家强加的一系列术语和技术术语,相反,无所不在语言是在整个团队的协议下发展起来的。这种无所不在的、通用的语言必须在团队成员之间的任何时候都可以表达,以及可以用软件模型来表示。

上下文映射​​​​​​​

上下文映射有助于理解整个项目,能够显示不同的有界上下文之间的关系。理解有界上下文之间的关系非常重要,这样您就可以正确地构建域模型。

有几种方法可以关联有界上下文:

  1. 共享内核:两个或多个团队之间的共享上下文,可减少代码重复,但是,任何更改都必须在团队之间进行组合和通知。
  2. 客户/供应商:它是客户端(下游)和服务器(上游)之间的关系,团队处于持续集成状态。
  3. 循规蹈矩Conformist:这是涉及上游和下游团队的情景,但在此模型中,上游团队没有动力满足下游团队的需求。
  4. 伙伴:这是团队依赖并需要建立合作关系的场景,以便他们能够满足两个系统的开发需求。
  5. 反腐败层:在这种情况下,客户端(下游)创建与上游上下文通信的中间层,以满足其自己的域模型。
  6. 还有其他集成模型,如开放主机服务Published Language,发布语言,分离方式Separate Ways。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

让云落地

让云落地

【美】Michael J. Kavis(迈克尔 J.凯维斯) 著 / 陈志伟、辛敏 / 电子工业出版社 / 2016-3 / 65.00元

云计算落地已成事实。从前几年的概念普及,到如今越来越多的企业将业务迁移至云上,云计算正在改变整个社会的信息资源使用观念和方式。云计算还在不断成长,技术细节也在不断变化之中。对于使用者而言,能够基于自身的业务、技术和组织需求等各方面情况,选择正确的云服务模式,是成功使用云计算最关键的技术决策之一。 《让云落地:云计算服务模式(SaaS、PaaS和IaaS)设计决策》共有 16 章,作者有意避开......一起来看看 《让云落地》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

MD5 加密
MD5 加密

MD5 加密工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具