模型和有界上下文的概念如下:
模型:
一种抽象系统,它描述领域的选定方面,并可用于解决与该领域相关的问题。
Bounded-Context:
一个单词或语句出现的决定其意义的设置。
但我不得不问:
提前谢谢。
注:可以自由地用一些框架( Django,Axon..etc )来说明您的答案。
发布于 2019-12-11 09:34:43
是两者之间的关系是包容关系,即有界上下文有一个或多个模型?
我想您可以这样说,但是有界上下文( BC )只有一个模型,对象是根据BC的无处不在的语言(UL)命名的。
模型和BCs都属于解空间。
在问题空间中,有域和子域。
在解决方案空间中,您有BCs (理想情况下,1:1与子域相关)。您为一个子域建模,并且对每个子域模型都有一个BC。
但是,例如,您可以只使用一个模型来建模整个域,以便整个域的解决方案空间中只有一个BC。在本例中,您有一个BC与多个子域相关。这个BC将是一个单一的应用程序。
另一个例子,一个与多个BCs相关的子域,发生在您将子域拆分成多个“部件”,并对每个“部分”进行建模时。因此,您将有许多子域的模型。这样,在解决方案空间中,您有许多用于子域的BCs,即解决子域问题的许多应用程序。
这些1:N或N:1的子域与BCs之间的关系发生在UL术语的划分是模糊的情况下。
正如我所理解的,DDD概念应该可以通过代码库来识别(在某种程度上),这对于聚合、实体、事件、Commands...etc来说是很清楚的,但是模型和有界上下文是如何映射到代码库中的呢?例如,一个模型只是一个或多个聚合的集合,还是其他什么?有界上下文是名称空间还是其他东西?
BC是一个软件系统,一个自主的应用程序。一个模型是BC的源代码。但是在DDD中存在着另一个概念:模块,一组内聚的域对象。这是一个比BCs更薄的部门。
所以,从宽到小:
解决方案-> BC ->模块->聚合->实体和值对象
发布于 2019-12-05 21:29:01
这是基于我的理解当然..。意见可能各不相同。
https://stackoverflow.com/questions/59196817
复制相似问题