看以前,先忘掉全部,一步步看就好了。 最后会有一个原型demo,固然是转的了。看完文章,再看demo,而后再回头看文章就很好理解了,最好本身写一遍。html
1.mvp开发模式能够理解为页面接口编程,每一层的骨架都是先经过创建接口,定义每层的必要方法,再实现方法完成的。android
2.在mvp开发模式中,把每一个模块代码分为三个层,View,presenter,model层。git
3.view层从字面意义上理解,就是视图层,在安卓的mvp开发模式中,把activity,fragment,等 一些界面显示看做是视图层,在这些视力层中,只作一些视图变换操做,不对数据,逻辑进行操做。github
3.1.创建接口:经过原形设置上,根据布局界面会有哪些改变,来编写对应的接口方法。编程
3.2.实现接口,在对应的接口方法中,完成视图变换操做。布局
3.3.仅view层对视图进行操做。初始化presenter层接口实现类对象,并把view层接口实现类的对象发送过去,以便presenter层对view层进行操做。htm
4.presenter层,控制层,在presenter层中,持有view,model层的接口实现类的对象,是经过这两个层实现类对象对分别对这两个层进行操做。对象
4.1.创建接口:须要建立两个接口blog
4.1.1:接口1.根据view层要实现的功能,编写出相应的对接口方法,接口
4.1.2:接口2.根据model层要回调回来的数据,编写对应的回调接口,与方法。
4.2.实现接口1,2,在对应的方法中,经过view层实现类的对象对view层进行操做,经过model层实现类的回调方法,获得业务数据
4.3.经过以上两部,完成view层与model层的解耦与控制。
5.model层,是对数据进行请求,操做的层,处理完后,能够把数据经过回调的方式先回调给presenter层,presenter层再经过持有的view层的接口实现类的对象中的一些方法,对view层进行操做。
5.1.创建接口,经过对业务数据需求创建接口方法。
5.2.实现接口,在实现类方法中完成对业务数据的逻辑操做,而后经过presenter的接口回调方法把数据传递给presenter层。
5.3.本层只操做数据,不对视图进行任务操做。
Mvp Demo:一个粟子.
收藏的比较好的mvp博客:一篇足矣。