2

我正在尝试使用 Java Modeling in Color 中的Party Place ThingRole原型。

此外,我还尝试合并 DDD 最佳实践,现在假设我们有 1 个人在我的应用程序中扮演 2 个角色,比如客户和患者。

客户角色用于 CRM 有界上下文,患者角色用于医院管理有界上下文。

我的角色类可以使用弱 id 访问 Person 详细信息,这是一个可以唯一表示 Person 的值对象,可以在此处找到此方法的详细信息。

现在,在 Party Place Thing 原型中,指定的职责之一是能够列出派对所扮演的角色。

鉴于角色存在于不同的限界上下文中,如何实现这一点?

因此,理想情况下,客户和患者不应与 Person 存在于相同的有界上下文中

4

1 回答 1

0

自从我提出这个问题以来,据我所知,一个人(一方)需要了解它所扮演的所有角色的情况很少见。

一个人需要什么样的不变量来保持它所扮演的所有角色?

所以基本上 DDD 会说 Person 不需要知道它在各种 BC 中扮演的所有角色。

在我上面的示例中,CRM BC 中的 Customer 类将知道它所扮演角色的人(一方)。

并且医院管理(HM)有界上下文中的 Patient 类也会知道它所扮演角色的人(Party)。

但是,Person 类不知道 Customer 类或 Patient 类。

事实上,基于 UL(通用语言),CRM BC 中的 Person 类看起来与 HM BC 中的 Person 类非常不同。

这些来自不同上下文的 Person 类相互关联的方式是使用软标识符。

有关详细信息,请在此处参阅本书。

谢谢

于 2012-03-09T17:08:07.783 回答