在 MVVM 上使用 SharedPreferences 或文件

Using SharedPreferences or File on MVVM

我很好奇存储库在MVVM架构中的作用。如果您决定将存储库添加到您的项目中,这个存储库是否只负责来自数据库或网络的数据?问题是关于 SharedPreferencesFiles,我应该让存储库对此负责,还是应该将它们保留在 ViewModel 中。

根据我对 MVVM 的理解,我可以说:

  • Repository 应对您的项目的所有数据负责 组件要求。无论是来自数据库还是 API.

  • 让存储库从 Database/API/Server/etc 获取所有数据。然后你 从该存储库中获取数据。

  • 如果需要,您可以拥有多个存储库,例如API Repository/FirebaseRepository/RoomRepository 等...

  • 您可以将多个数据源合并到一个存储库中,但您需要 手动处理。