美文网首页
关于MVP架构的自我理解

关于MVP架构的自我理解

作者: 大芒果er | 来源:发表于2017-12-14 11:35 被阅读10次

最近项目不太赶时间,空余的事件研究了一下MVP的架构,在以往的使用MVC模式下的代码耦合度实在是太高了,小项目还无所谓,但是碰到稍微大一点的项目,activity中的代码简直是惨不忍睹,上千行的代码对于MVC来说还算是少的,几千行的代码怎么看,怎么看,看的头疼,维护起来更是头疼的要命,所以为了学习也为了后来的小盆友能清晰的看懂代码,方便的维护代码,索性研究一下MVP模式。以下是自己理解的MVP,如有不对,请包涵。

最近在看MVP的时候也顺带又理解了一下MVC的模式:

MVC模式的模式主要就是:

 model(模型),view(视图),cntroller(控制)三个模块之间都会有互动和联系,所以说耦合度会很高,就比如说activity中,既要去刷新试图,还要去处理逻辑代码,还要处理网络请求等等各种问题,使得activity中的代码量很容易就上去了。所以以后自己看代码都有可能忘记这个地方为什么这么写,这么写是为什么。所以还是要去学习啊,时代在进步,自己不进步就完犊子了。

MVP模式的自我理解:

MVP的直观感受就是,接口多,类多。这是我在看MVP架构时的第一感受,当时我在想,这么多接口,这么多类真的容易去维护么,随着稍微深入的研究了一下,才发现这个架构的好处,模块之间的耦合度低,项目构架层级清楚,清晰明了,下面来看看自己写的很白痴的demo:

这张图示我随便的建立的一个架构,瞎写的不过可以清晰的看到三个模块。

model(模型):用来处理一些网络请求,数据逻辑类的。

view(视图):我把activity分类到了view一类中,主要就是处理用户界面的数据更新,刷新等操作。

presenter(主持):这个就类似与把控者了,控制view和model之间的联系。

总的来讲个人理解的MVP就是把以前activity中除了界面刷新以外的逻辑都拿了出来,也就是说,view会响应用的的操作事件,通过接口方式告诉presenter有事件发生,presenter再通过接口来告诉model事件发生所要进行的操作,model执行完一系列的处理通过接口将结果返回给presenter,presenter再将数据返回给view进行界面的刷新,整个过程中view和model是没有交互的,都是通过presenter来完成的。

相关文章

  • 关于MVP架构的自我理解

    最近项目不太赶时间,空余的事件研究了一下MVP的架构,在以往的使用MVC模式下的代码耦合度实在是太高了,小项目还无...

  • Android 架构优化~MVP 架构改造

    以前我写过一篇关于 MVP 架构的文章《Android架构—MVP架构在Android中的实践》。 随着业务的复杂...

  • mvp设计指南

    目前关于mvp架构实现的例子相当之多,这里总结了一下社区对于mvp架构实现的几点忠告。 假如你打算将MVP模式引入...

  • MVC和MVP

    Android mvp 架构的自述 如何更高效的使用MVP以及官方MVP架构解析 老的MVC架构 新的MVP架构 ...

  • 使用Mockito进行Java单元测试

    Google在3月份推出了一个关于Android MVP架构的官方Sample,除MVP架构本身之外,在这个Sam...

  • Android MVP的简单使用

    1.前言 2.MVC架构 1.MVC架构优缺点 3.MVP架构 1. MVP架构优缺点 四.MVP架构实战 MVP...

  • android MVP架构

    一、MVP介绍 MVP的架构组成如图1所示MVP架构.png相对于MVC架构,MVP架构对应的内容有了如下调整: ...

  • MVP+Retrofit+Rxjava在项目中实战解析 

    文章目标 MVP在android中的原理解析 MVP+Retrofit+Rxjava在项目中实战解析 架构经验分享...

  • Android主流框架面试准备

    MVP Android MVP架构搭建史上最全的Android MVP模式架构面试题集锦Android面试题-架构...

  • Flutter MVP实践

    1. Flutter 结合 google MVP 架构的理解 在Android 应用开发中,google 官方就给...

网友评论

      本文标题:关于MVP架构的自我理解

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