MVP设计模式实际观察

时间:2018-05-17 08:59:59

标签: android design-patterns mvp android-mvp

我试图理解MVP设计模式,并通过this链接和其他一些链接进行了一些观察。我想知道以下所有观察结果对于实际实施MVP设计模式是否正确?

  1. ActivityFragment和我们的xml布局将成为View的一部分。

  2. 我们的POJO类或负责获取数据,进行API调用或调用Web服务的类是Model的一部分。

  3. 我们创建一个接口,其中包含我们需要在View上执行的各种事件的抽象方法或者视图生命周期的各种事件。 Activity / Fragment将实现该接口并将其引用传递给Presenter构造函数。

  4. Presenter将引用View和Model。它的构造函数将包含对Activity实现的接口的引用,它将创建Model的对象。

  5. 每当对View或View的任何生命周期回调执行操作时,都会从View调用Presenter的方法。该方法将根据要求与Model和View进行交互。它将调用Model的方法并调用Activity实现的接口方法,因此Model和View都可以在其类中执行操作。

1 个答案:

答案 0 :(得分:1)

您的理解大多是正确的:

  1. 正确。
  2. 非常正确。虽然注意到在MVP设计模式术语中,概念 Model (M)非常通用。在实践中,模型是divided in a few layers,取决于它们的“功能”,例如交互者存储库,网络等。
  3. 一般来说,正确。
  4. 关于VP部分的正确和上的错误“它将创建模型的对象。 Presenter不应该创建Model的实例,它也应该通过接口与它通信。
  5. 一般来说,正确。但是,View不应该关心View的生命周期。模型应该提供数据。