我正在学习一本Spring书籍,他们提到了Java领域模型。
那是什么?
迈克尔·博格沃特的回答“领域模型(该术语与Java无关)是一个类”是错误的。我很惊讶有这么多人同意那个答案。
领域模型是所有模拟解决方案行为的类。它是实现所需行为的最小必要条件。领域模型不包含UI和持久性功能(除非问题围绕UI或持久性)。
我见过将领域模型实现在一个类中,但这不是面向对象解决方案的设计。在面向对象的领域模型中,每个概念都有自己的类来实现所需概念的行为,并包含维护类状态所需的必要字段。
让我们从一个例子开始。您正在创建一个应用程序,该应用程序将由您当地的某些人使用。在设计系统时,您称这些人为系统的用户。 您还必须管理这些人在系统中的角色列表和身份验证信息。因此,您决定在系统中创建一个概念实体。这个概念实体进一步映射到您软件解决方案(应用程序)中的一个User对象。现在,当您表示您的应用程序时,您将描述该User对象为域模型。这个术语背后的基本想法就是只有这样。您可以在以下维基百科链接中进一步阅读。