在DDD中,我正在为Application层中的每个Aggregate创建一个服务,并在服务之前添加聚合名称。服务目的是提供CRUD操作,并在域层中调用聚合上的任何域相关功能。
此类应用程序服务名称是否应包括聚合名称为复数或单数形式,例如ProductService
或ProductsService
?
答案 0 :(得分:2)
奇数大部分时间。另见这篇文章:
https://softwareengineering.stackexchange.com/questions/103720/classes-naming-singular-or-plural
但是,我想补充一点,当你的特定Aggregate代表整个集合时,复数是合理的。
答案 1 :(得分:1)
当创建一些为其他对象提供某些服务的服务提供者时,使用单数名称并在命名时更具体,您的ProductService名称不表示用于的对象。例如,将名为ProductPriceCalculator或ProductShippingInfoValidator的服务设为服务,并且应该具有单一责任(目的)