【发布时间】:2014-10-01 17:34:19
【问题描述】:
我处于一种情况,我应该模拟(在域中)要求,其中 用户 可以是 帐单管理员 和 系统管理员 和员工。
所有管理员都可以做普通用户可以做的任何事情,但普通用户不能做其他角色可以做的事情。问题是我不明白如何通过继承用户实体来做到这一点,而且我读过这不是一个好主意,所以不想那样做..
员工、系统管理员和账单管理员是用户的不同角色。有什么建议吗?
更新:
更多信息:鉴于 Employees BC 和 Billing BC 和 System BC 是三个不同的限界上下文处理上述给定场景的理想方法是什么?
【问题讨论】:
-
你没有给出太多细节,但对我来说,这三个角色似乎实际上是在三个不同的有界上下文中(“bill”、“system”和“employee”似乎与我无关) ,因此您可能最好将它们完全独立地建模,即使这意味着一些代码重复。
-
是的,确实如此,它们确实属于不同的业务上下文,也许我的思维方式是错误的,我仍然在考虑数据方式..即用户表可以重新用于所有三个角色都拥有一个角色 id,也许我可以以同样的方式重用实体,这在域建模中可能是错误的想法..
-
一般建议是避免在 BC 之间“重复使用”任何形式。
标签: domain-driven-design domain-model