我最近读到了一篇关于 "贫血领域模型模式" 的帖子,引起了我的注意。阅读过程中,我发现贫血领域模型的描述适用于我参与和构建的许多项目。我从未认为这是一个糟糕的设计决策,因为它感觉非常自然。我认为,在领域模型轻量且不太复杂的情况下,贫血领域模型名称非常合适。为什么要增加领域模型的复杂性,如果不需要,只是为了使"贫血领域模型"这个标题不能恰当地描述您的代码呢?
问题:在什么时候,将更多的代码复杂性塞入您的服务/应用程序层,变得不正确,而是将复杂性暴露在实体对象之外?我完全赞成在实体上拥有一个"总计"属性,其中它可以在内部计算出"总计"的值。我不赞成使实体直接与各种其他小部件通信,以确定其属性的结果。那么,贫血领域模型的概念是一种反模式还是很好的关注点分离?贫血领域模型的标题总是不好的吗?
只是好奇其他人对这个设计(反)模式的看法。
问题:在什么时候,将更多的代码复杂性塞入您的服务/应用程序层,变得不正确,而是将复杂性暴露在实体对象之外?我完全赞成在实体上拥有一个"总计"属性,其中它可以在内部计算出"总计"的值。我不赞成使实体直接与各种其他小部件通信,以确定其属性的结果。那么,贫血领域模型的概念是一种反模式还是很好的关注点分离?贫血领域模型的标题总是不好的吗?
只是好奇其他人对这个设计(反)模式的看法。