浅谈 Android MVP
2016-03-14 20:20
363 查看
近段时间,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{
什么是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{
相关文章推荐
- Android 热门博主汇总
- android 中样式修改关于shape 的相关问题
- Android开发仿位置共享功能基于高德地图
- .Net程序猿玩转Android开发---(3)登陆页面布局
- Android 中部分文字高亮显示方法
- 从一个问题来认识android:configChanges属性
- Android 中 handle Message 的简单使用笔记
- 沉浸式状态栏源码分析
- android如何隐藏头部的标题栏全屏显示
- Android 实现个性的ViewPager切换动画 实战PageTransformer(兼容Android3.0以下)
- Android listview与adapter用法
- android ecplise 的 项目结构目录
- Android屏幕适配全攻略3-和产品经理聊聊
- Android开发小知识-ExpandableListView使用
- 解决android studio报Error:Gradle DSL method not fount: 'compile()'
- Android中Java和JavaScript交互
- Android提升篇系列:Activity recreate(Activity 重新创建/自我恢复)机制(一)
- 42.Android之ListView中ArrayAdapter简单学习
- Android 优化Bitmap避免OOM
- 安卓我的课表