第一篇、开题篇 mvp+rxjava+retrofit架构

来源:互联网 发布:电脑使用手机网络 编辑:程序博客网 时间:2024/04/29 12:43

开题篇

GitHub项目地址
下一篇 mvp框架完成

从事Android四年多来,接手的项目也是各式各样,所以,不同项目中用的框架也是五花八门,项目中涉及的技术也是形形色色,这其中,有的开始用的很爽,但是,随着版本的不断迭代,慢慢的发现有很别扭,被诟病了。有的是从始至终就一路暴爽。比如:之前的一个项目,是购物平台类的。需要是这样的:开始商家端和买家端在一个应用中,后来要把商家端的独立出来,单独开发一个商家端的应用。这个就比较坑了。由于项目是mvc的架构,项目耦合性太大了,尤其是商家端和买家端的逻辑处理,很多都是关联的。这个太改版就太痛苦了。后来想想,如果当时架构是MVP架构,降低耦合,业务分离,那么,这个过程会开心很多的。
后来,retrofit+RxJava出来了,看到这种链式编程,代码易读性强。尤其是结合mvp简直就是无缝连接,对网路请求以及错误处理、数据变换真的是屌炸天了。瞬间就对他爱不释手了。
另外,我们市面常见的架构类型进行了总结如下:
1、摩拜单车的侧边栏型
这里写图片描述

2、淘宝 底部tab
这里写图片描述

3、爱奇艺的 toolbar + bottom
这里写图片描述

这三种是市面上常见的三种应用的架构,我会在后面的会在demo中实现的。
我对之前我所了解、接触、运用到的技术,会在后面的博客中都提到。
大概会分七个篇幅来阐述。
一、开题篇。
二、mvp框架搭建。
三、常用的框架搭建(如上三种常见的框架)
四、普通网络请求的封装。
五、rxjava+retrofit网络请求的封装。
六、缓存的处理。
七、补充偏 。

涉及的技术大概有:
eventBus、rxjava+okhttp、数据解析fastjson、图片加载fresco、沉浸式状态栏systembartint、下拉刷新框架TwinklingRefreshLayout、注解框架butterknife、官方权限适配easypermissions等火热技术。
其中,也设计到Java中常用的反射技术,也会涉及到几种设计模式:build模式、单例模式、简单工厂、抽象工厂模式、代理模式、策略模式等。
这个过程一方面是对自我知识的查缺补漏、一次总结,一方面,希望通过这样的总结,大家集思广益,对我也多提出不足之处,一起共同进步。

GitHub项目地址
下一篇 mvp框架完成