gpt4 book ai didi

android-architecture-components - 在 Android 应用程序中在哪里创建存储库对象?

转载 作者:行者123 更新时间:2023-12-05 07:23:04 25 4
gpt4 key购买 nike

您如何以及在何处创建您的 Android 应用程序中的存储库对象?

您是否将存储库实现为单例?是静态类吗?

我正在尝试使用单一事件方法:

App structure

显然我想在每个 ViewModel 中使用相同的存储库。但是,您选择哪种方法或哪种方法更有意义,让您的存储库只存在一次并可以从任何地方访问它?

在 android 开发人员示例中,他们在 mainactivity 中创建存储库对象,因为他们需要应用程序对象来创建存储库。但是在这个例子中你不能从任何地方访问它并且你可以出于同样的原因创建多个,例如处理 SQL。

最佳答案

您是否阅读本指南,Guide to app architecture ?我认为这会回答您的大部分问题。

实际上,您不应该从任何地方访问存储库,而应该从 ViewModel 或从 UseCases(领域层,看看 Clean Architecture 看看)。

ViewModel 将数据获取过程委托(delegate)给一个新模块,即存储库。存储库模块处理数据操作。它们提供了一个干净的 API,以便应用程序的其余部分可以轻松检索这些数据。他们知道从哪里获取数据以及在更新数据时调用哪些 API。您可以将存储库视为不同数据源(例如持久模型、Web 服务和缓存)之间的中介。

要管理组件之间的依赖关系,您可以使用一些 DI 库。

关于android-architecture-components - 在 Android 应用程序中在哪里创建存储库对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56254710/

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