近段时间,Android的MVP模式越来越火爆,MVC仿佛已经成为过去时了,今天就来谈谈这个新的设计模式——MVP.
什么是MVP?
M:Model是数据访问层,例如数据库访问API和远程服务器访问API;
V:View是视图层,Android中它可能是Activity、Fragment、View、Dialog
P:Presenter是View和Model的中间纽带,负责后台数据处理任务和UI层的交互
那为什么使用MVP模式呢?
MVP模式相比之前的MVC设计模式,降低了程序的耦合性,可以简化程序,使程序更利于我们维护。
以音乐播放器为例,用MVP设计模式来编写的代码如下所示:
interface IMusicView {
void setAdapter(List<Music> musics);
}
MainActivity implements IMusicView{
IMusicPresenter pre=new MusicPresenter();
pre.loadMusics()
setMusics()
setAdapter( list ){
实现显示列表的代码
}
}
interface IMusicPresenter{
void loadMusics();
}
MusicPresenter implements IMusicPresenter{