演示者模型和多个数据源

时间:2016-11-15 09:11:00

标签: java android oop design-patterns mvp

在Android中实现MVP时,Presenter负责数据。从我在网上找到的例子中,Presenter通过依赖注入在数据源中传递,用于获取数据 我的问题是我们如何处理数据来自多个数据源的情况?我们是应该将多个数据源传递给演示者还是为每个数据调用创建一个数据源?

1 个答案:

答案 0 :(得分:1)

演示者不对数据负责!模型负责数据。我们的想法是将模型类连接到各种数据源。所以,在实践中,这看起来像是这样的:

模型包含某些维基页面的数据 Presenter具有用于视图的callabck方法以通知更改 View显示演示者指定的数据

用例:更新一些内容

用户点击"保存" - > 视图

  1. 告知Presenter用户点击"保存"
  2. 演示

    1. 从视图
    2. 阅读维基页面的内容
    3. 模型的调用更新方法
    4. 告诉view显示一些加载微调器
    5. 模型

      1. 更新本地缓存或存储(供离线使用)
      2. 异步设置服务器调用以存储更新的数据
      3. 完成服务器调用后通知演示者数据集已更改且保存已完成
      4. 演示

        1. 从模型中检索数据
        2. 更新视图(将模型的数据传递给视图)
        3. 告诉视图停止加载微调器。
        4. 如您所见,该模型负责与各种数据源进行通信,而演示者则协调用户操作和模型更改。

          另见http://www.tinmegali.com/en/model-view-presenter-android-part-1/