我从零开始学习DDD课题,在许多DDD示例中,我看到“仓库接口”位于域中。实际上,这个仓库的真正目的是什么?它到底解决了什么问题?它是否对持久化层实现有任何影响或关联?
谢谢。
我从零开始学习DDD课题,在许多DDD示例中,我看到“仓库接口”位于域中。实际上,这个仓库的真正目的是什么?它到底解决了什么问题?它是否对持久化层实现有任何影响或关联?
谢谢。
仓库接口位于领域层,而仓库本身在基础设施层中实现。在领域层定义仓库接口可以轻松地在基础设施层的不同实现之间切换,因为它们都遵循相同的接口。
最终,应用程序层将从基础设施层调用仓库实现。更进一步,您甚至可以根据仓库接口定义一个应用程序接口,然后定义一个应用程序实现,在其中注入所选的基础设施层仓库实现。