美文网首页
Android 组件化MVP项目:项目基础结构

Android 组件化MVP项目:项目基础结构

作者: JamesYang1624 | 来源:发表于2021-03-10 12:17 被阅读0次

    写在前面的话  

            最近公司需要开新项目,感觉之前项目的构建和模块设置有点乱,后期维护和增加模块不灵活。所以想整合之前的一些项目的功能,做统一的封装、集合,也可以当做一个记录吧,以后可以更好的复用

    设计思路

            之前的项目一般使用mvp模式来构建,这里先说说我对mvp模式的一些理解:

    1) M:model

      a. 主要负责网络请求,数据获取

      b. 请求参数的封装,

    2) V:view

      a. 定义界面的一些操作,比如接口返回数据后UI的操作,loading,toast之类的

      b. view层要尽量的和数据解耦,不要在view层做数据的操作,只负责刷新界面

    3) P:presenter

      a. P层主要是作model和view 层的桥接,我的思路是P层可以进行一些数据封装,主要是为了model层过来的数据能更加轻松的再view层使用

      b. 现在比较好的一个开发设计思路是尽量减少activity 的使用,尽量多用fragment来实现页面,减少开销,这种情况下使用presenter来存储数据就比较适合,不管你界面怎么切换,所有的数据存在activity的presenter里面,fragment只需要持有该presenter的引用,就可以非常方便的访问或者修改页面数据

      以上就是我mvp设计的大体思路了,不过在真是项目中,肯定是使用mvp+mvc混合的方式来编写,因为mvp处理一些交互逻辑复杂的界面,可以使代码逻辑相对清晰,而且可以很好的实现复用,后期维护起来更好;但是简单的界面,不存在过多的交互逻辑,还是使用mvc会简单很多,不需要创建很多类,一个界面就能把流程 走完。这样项目的开销相对较小

            说了这么多,都是可能表述不那么直观,下面贴出项目结构:

    mvp项目结构

            如果你觉得自己一个个创建类太麻烦,可以使用MVPhelp 这个插件,非常快速能一键生成所需要的contract、model、presenter

    使用步骤

    1.创建presenter类

    2.在presenter类中使用Mvp Helper

    选中插件

    3.然后就帮你把所有的需要的类就创建好了

    生成的类文件

    接下来,将介绍一下具体项目中一些公共类的封装!

    相关文章

      网友评论

          本文标题:Android 组件化MVP项目:项目基础结构

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