mvp模式的由来
对于android开发来讲,传统的开发的模式因为逻辑和页面的展示都写在Activity里面,视图层和控制层区分不是特别明显,这对于复杂的业务来说,activity的代码量将会非常多而且复杂,随着版本的迭代,需求的增加,代码会非常冗余,不易于维护,这时mvp模式就应运而生了,如图解:
简单的说一下对于Android开发来讲,各个层之间的作用:
Model层:负责处理业务,比如:获取网络数据,SD卡的数据(包括图片、文件)等等。
Presenter层:负责处理(控制)View层的逻辑,是View层和Model之间沟通的桥梁(或者是纽带),当Model获取到数据后,通常是通过”回调”的方法,”通知”Presenter层,再由Presenter把数据响应给View层。
View层:对于Android来讲就是Activity,用于处理用户的操作,比如各种监听等。
最后浅谈mvp模式开发的优缺点:
优点:这种模式非常利于大型项目的开发,十分有效的降低了模块与模块之间的耦合度,利于项目的迭代和维护,也利于团队式的开发。
缺点:类和接口的数量会呈几何倍数的增加,你看一个小小的登录功能就需要那么多的类和接口。但总的来说是利大于弊。