您对这一领域驱动设计的观点有什么问题?

Boz*_*zho 13 java oop domain-driven-design

我刚刚撰写了一篇关于我对域驱动设计的看法的长篇(和杂乱)博客文章,其中大量使用了spring和hibernate等框架.

我要求你发现我对这个问题的看法有什么问题 - 为什么这不起作用,为什么它没有给DDD的好处,为什么它一般不是一个好主意.

博客文章在这里(我认为我不需要复制粘贴在SO上 - 如果你认为我应该,请告诉我).

我知道这个问题是主观的,但它的目的是收集最主要的意见.

(我正在标记Java,因为讨论的框架是Java框架)

HDa*_*ave 4

我刚刚花了一年的时间来分解一个应用程序,以消除贫血域反模式及其对 Hibernate 的滥用。

我可以毫无疑问地说,DDD 带来的代码更容易理解和重构。在我们的例子中,删除了无数不必要的 getter 和 setter、封装的增加、业务逻辑的集中以及 DDD 带来的服务层的(显着)简化,使得系统变得更加易于维护现在我相信我们能够完成它,而之前它一直拖延到永远。我们已将该应用程序的行数减少了 50%,但没有删除任何功能。

我还相信 ORM 工具的全部意义在于让我的业务逻辑因持久性代码而变得整洁。当我们有贫乏的领域模型时,我们为每个领域类都有一个 DAO,现在我们有一小部分 DAO 作为“主要”领域类上 CRUD 的入口点,但其他“次要”领域类由他们的父母......不是因为持久性逻辑在父母中,而是因为 Hibernate 透明地对业务逻辑做出反应并使一切正常工作。

简而言之,我无法回答这个问题,因为我百分百同意你的帖子......并且我每天都生活在其中。