gpt4 book ai didi

oop - 比较存储库与提供者与服务

转载 作者:行者123 更新时间:2023-12-03 22:30:27 26 4
gpt4 key购买 nike

关闭。这个问题需要更多 focused .它目前不接受答案。












想改进这个问题?更新问题,使其仅关注一个问题 editing this post .

3年前关闭。




Improve this question




我需要实现从某个远程数据源检索数据的逻辑。现在我需要决定——我需要哪个概念:Provider、Repository 或 Service。

其实我不太明白这两者之间的巨大差异。是的,我知道存储库是更具体的数据,不应该包含任何业务逻辑。另一方面,提供者除了管理数据外,还可能包含一些业务规则。 Service 除了管理数据外,还可以包含一些业务逻辑。那么Service和Provider有什么区别。

从另一个角度来看,我认为使用服务是更好的方法来表明它是远程访问的抽象。

结论:所有这些方法看起来都很合理,我完全对此感到困惑。如果有人能帮助我,将不胜感激。

最佳答案

存储库和服务不是相互排斥的。事实上,它们经常一起使用。
服务层位于您的领域对象之上,并为业务操作提供粗粒度接口(interface)。它通常描述您的应用程序的用例。服务层使用存储库来获取您的域对象,并在可能的情况下将进一步的执行委托(delegate)给它们。
存储库的作用类似于持久域对象的集合。它提供了使用某些标准查找正确对象的方法。它还提供了保存这些对象的方法。
野外存储库的实现差异很大。存储库可以提供类似的方法

List<Person> findPersonByName(String name)

或更通用的方法与标准对象
List<Person> find(Criteria criteria)

补充阅读: service layer , repository
我不熟悉提供者模式。

关于oop - 比较存储库与提供者与服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10664731/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com