繁体   English   中英

如何有效地使用android-architecture-components?

[英]How to efficiently use android-architecture-components?

最近在学习使用android架构组件。 我有一个关于ViewModel的问题:

根据架构设计指南,我们可以理解数据是整个应用程序的核心。 ViewModel 用于管理数据,存储库用于从网络或数据库中获取数据。

如果你有一个只处理用户交互逻辑的 UI,但几乎不可能从网络或数据库中获取数据,那么交互逻辑代码应该在ViewModelActivity / Fragment

在另一个界面中,既有逻辑交互也有数据获取,交互逻辑代码应该放到ViewModel还是activity/fragment中?

我认为您指的是 Android 中流行的MVP模式。 在过去,通常会看到巨大的Activity类处理属于该Activity所有逻辑。

如果您确实指的是MVP ,那么您可能喜欢采用可以与activity分离的方法来执行称为presenter的逻辑的想法,而让activity负责渲染。 如果您想更进一步,您还可以创建一个类,其行为类似于网络/数据库interactor并且仅使用它来获取数据,从并且仅从presenter调用。

模型只是 POJO。

它是这样的:

  • 活动 --> 告诉演示者, hey, a button was pressed, what should I do?
  • 演示者 --> 回应说, activity, render that error dialog

您不必使用库来完成此操作,但如果与流行框架 Dagger 等dependency injection库结合使用,您会发现它会更有效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM