第一部分:什么是MVP?什么是MVC?
1、什么是MVP?
M:数据层(数据库、网络、文件存储等等...)
V:View和Activity和Fragment以及它们的子类
P:中介->Presenter(作用:将M层数据和UI层进行关联和交互中介)
2、什么是MVC?
M:单纯Model(Java Bean对象)
V:View以及子类
C:Fragment和Activity以及子类
第二部分:开始进行MVP搭建
内容一:MVP入门?
·第一步:看一个基本案例?->普通代码实现
·第二步:MVP实现->简单案例->分层次设计
· 第三步:MVP实现->优化->优化第1步->方法绑定
·第四步:MVP实现->优化->优化第2步->抽象
·第五步:MVP实现->优化->优化第3步->BaseView解决
·第六步:MVP实现->优化->优化第4步->泛型设计
·第七步:MVP实现->优化->优化第5步->抽象类BaseActivity->具体实现
·第八步:MVP实现->优化->优化第6步->BaseActivity中抽象->抽象实现(BasePresneter和BaseView)
内容二:MVP进阶?
·第九步:MVP实现->优化->优化第8步->Fragment登录功能
·第十步:MVP实现->优化->优化第9步—>Fragment抽象
·第十一步:MVP实现->优化->优化第10步->针对LinearLayout、Button集成MVP
需求:集成->实现登录功能
·第十二步:MVP实现->优化->优化第11步->抽象为一个类
·第十三步:MVP实现->优化->优化第12步
代理一:
代理->针对的是->MVP绑定和解绑
分析角色划分?
目标接口:绑定和解除绑定回调接口(MvpCallback)
目标对象:具体实现(ActivityCallbackImpl、FragmentCallbackImpl等等...)->Activity实现->MvpActivity
分析:创建presenter、创建view等等...
代理对象:代理实现(MvpCallbackProxy)
代理二:
代理->针对的是->Activity整体代理->生命周期代理
分析角色划分?
目标接口:ActivityMvpDelegate
目标对象:ActivityMvpDelegateImpl
代理对象:MvpActivity(Activity)
功能实现:
第一个部分:绑定和解绑->目标对象(生命周期)
第二个部分:实现MVP绑定和解绑->目标对象(MvpActivity)
第三步部分:测试