有界上下文应该如何引用/使用通用子域?

时间:2013-06-04 17:09:57

标签: domain-driven-design

1。我可以想到 BCs 可以使用/引用通用子域 GS )的三种方式。哪种方式最合适,为什么:

a - BC 可以引用 dll ,其中定义了 GS ,因此 BC 将能够根据需要引用类型(在 GS 中定义)(示例:在 BC中定义的方法 采用 GS 中定义的参数

b - 或整个 GS 应在共享内核中定义(此共享内核将与所有 BC共享对此 GS 感兴趣?

c - 或者只应在共享内核中创建 GS ,而 GS 的其余部分>会住在 BC 之内吗?

d - 还是有更好的选择?

2。 GS 最常见于 BC

由于

1 个答案:

答案 0 :(得分:1)

任何域(核心,通用子域,支持子域)都应该在自己的有界上下文中。

话虽这么说,通用子域是通用的,因为它不满足特定的业务需求。但是,它需要执行其他业务要求。因此,可以计算税率,政策溢价或基于传入的任意参数的客户分类的计算引擎等资格。它不执行任何业务功能。

我不认为通用子域应该是共享内核的一部分,因为它没有真正的业务功能。因此,共享内核应该包含共享的业务模型。

因此,多个BC将使用共享内核来执行特定的业务功能。

我希望有帮助吗?