在DDD中,任何不是实体或值对象的类是否应该是服务?
例如,在库中,某些类被命名为FileReader
(读取File对象),Cache
接口由MemcachedCache
或FileCache
,XXXManager ,. ..
我理解DDD之外,您可以根据需要命名您的课程。
但是在DDD中(以及相同的示例),我应该将我的类命名为FileReadingService
,CacheService
,由FileCacheService
,XXXService
等实现吗?
答案 0 :(得分:1)
我认为这实际上只与您的项目命名标准相关。 DDD没有规定这种程度的细节。
我唯一的建议是确保FileReader
之类的内容明显与您的域名隔离开来。可能在您的基础架构库中,
答案 1 :(得分:1)
DDD中还有其他类型的对象,尽管它们比Entity,Service或ValueObject更具支持性。像存储库和工厂这样的东西浮现在脑海中。但一般而言,问题描述中的“真实”对象(如物理对象或名词)应属于这些类别之一。
答案 2 :(得分:0)
好吧,我会对此说“是”。即使您可能遇到其他类型的对象,但最终可能会成为VALUE对象。我想是这样的:如果它不是需要存储的对象或由聚合根管理的对象,那么它必须是管理它们的服务。