美文网首页
《android-MVP模式的困惑》

《android-MVP模式的困惑》

作者: 吕檀溪 | 来源:发表于2016-04-16 23:18 被阅读126次

-------第一次写东西,写的不好,不好意思。

什么是MVP模式呢?我的理解就是老的MVC架构模式的一种延伸,能体现一种面向接口编程的思想。之所以会有MVP,是因为MVC中,C即Controllor对应于Activity或者Fragment。他们负责的东西太多了。比如:控件的初始化,网络请求,数据绑定,事件传递等。这显得我们的Controllor太过于臃肿。而为了给Controllor减轻负担,于是就有了Presenter这个一个中间层,让Presenter负责完成View于Model间的交互。这有点像Web开发中的Service,什么业务逻辑都放在这里来处理,然后再与Action交互。

在网上也看到了很多图形来解释MVP与MVC的区别,如下:

这是mvc:

这是MVP:

主要区别是这样的:

还有就是真个项目的结构图:


通过上面的几个图我们不难发现,MVP模式中Presenter在这整个模式中显得很重要,那么问题来了(这也是我没用想明白的事情):

1、Presenter通过接口的方式提高了代码的复用性,降低了耦合度,但是如果业务非常复杂的时候Presenter层会不会也会像MVC模式中的Activity一样显得很臃肿。

2、Presenter既然负责完成View于Model间的交互,那么它的生命周期怎么去控制。

3、Presenter层的出现,虽然降低了耦合度,但是相对于MVC来说代码量会增加部分(对每个界面的把控难度也增加了,因为你要些接口,必然要清楚这个界面应该做的事情),应该怎么去提高开发效率。

4、Presenter在与View交互的时候,如果这个界面是一个表单界面,字段又很多的情况下View与Presenter之间又怎么去交互。

我也希望有人能帮我解决这个问题。谢谢

相关文章

  • 《android-MVP模式的困惑》

    -------第一次写东西,写的不好,不好意思。 什么是MVP模式呢?我的理解就是老的MVC架构模式的一种延伸,能...

  • Android mvp模式+rxjava+Retrofit

    前言 原文:http://riversunny.top/2017/08/28/Android-mvp模式-rxja...

  • Android-MVP模式

    看到很多MVP模式中 都是这样一张图,但实际Model还是需要一个相反的箭头表明 Model层网络请求加载成功时的...

  • Android-MVP模式

    MVP模式的作用 分离了视图逻辑和业务逻辑,降低了耦合 Activity只处理生命周期的任务,代码变得更加简洁 视...

  • Android-MVP模式探讨

    前言 决定重写捋一遍android的各个技术点,常用的模式框架等等,就从这第一篇开始吧! MVP模式到底是什么? ...

  • Android-MVP设计模式(基础)

    MVP 全称:Model-View-Presenter MVP 是从经典的模式MVC演变而来,它们的基本思想有相通...

  • Android-MVP模式初涉

    前言 因项目需要,初识了MVP模式,但也只是大致知道它是干什么的,因此接下来就简单分析一下,加深印象的同时,能进一...

  • Android-MVP模式简单小案例

    MVP模式的登录小案例; MVP模式的核心思想 把Activity中的UI逻辑抽象成View接口,把业务逻辑抽象成...

  • android-MVP架构

    MVP 简介 MVP是模型(Model)、视图(View)、主持人(Presenter)的缩写,分别代表项目中3个...

  • Android-MVP Demo

    说在前面 引用Rocko说过的一段话 MVP作为一种MVC的演化版本在Android开发中受到了越来越多的关注,但...

网友评论

      本文标题:《android-MVP模式的困惑》

      本文链接:https://www.haomeiwen.com/subject/dkrolttx.html