有时,某些事物并不是一个“东西”。
领域中的某些概念并不能自然地建模为对象。将所需的领域功能强加于某个实体或值对象,要么会扭曲对象在模型中的定义,要么会人为地增加没有意义的对象。
因此:
当领域中某个重要的加工或转换逻辑不能自然地看作实体或值对象的职责时,可在模型中添加一个作为独立接口的操作,并将其声明为一个服务。为服务定义契约,用于说明如何与该服务进行交互。该契约是一组断言(参阅断言模式),用特定限界上下文中的统一语言来表述。还要为服务命名,服务的名称也会成为统一语言的一部分。
有时,某些事物并不是一个“东西”。
领域中的某些概念并不能自然地建模为对象。将所需的领域功能强加于某个实体或值对象,要么会扭曲对象在模型中的定义,要么会人为地增加没有意义的对象。
因此:
当领域中某个重要的加工或转换逻辑不能自然地看作实体或值对象的职责时,可在模型中添加一个作为独立接口的操作,并将其声明为一个服务。为服务定义契约,用于说明如何与该服务进行交互。该契约是一组断言(参阅断言模式),用特定限界上下文中的统一语言来表述。还要为服务命名,服务的名称也会成为统一语言的一部分。