目前Android的框架模式主要有MVCMVPMVVM

一、MVC模式

MVC(Model-View-Controller,模型-视图-控制器)采用业务逻辑、数据、界面显示分离的方法组织代码,在更新界面或用户交互时,不需要重新编写业务逻辑。

  • 模型层(Model):业务模型。
  • 视图层(View):界面描述。
  • 控制层(Controller):控制业务。

缺点:View层和Model层相互耦合,不易开发和维护。

二、MVP模式

MVP(Model-View-Presenter)是MVC的演化版本。在MVP中,Presenter完全将Model和View进行了分离,主要程序逻辑在Presenter里实现。而且,Presenter与具体的View是没有直接关联的,而是通过定义好的接口进行交互,从而使得在变更View时可以保持Presenter的不变,符合面向接口编程的特点。

  • Model:数据存取。Presenter通过Model层来存储、获取数据。
  • View:事件/视图展示。
  • Presenter:从Model层检索数据后返回给View层,使得View和Model之间没有耦合。

特点:绝不允许View直接访问Model。Presenter就是一个中间人的角色,通过Model层来获得和保存数据,然后再通过View更新界面,在这个过程中,通过定义接口,使得View和Model没有任何交互。

三、MVVM模式

MVVM(Model-View-ViewModel)和MVP类似,只是将Presenter改为ViewModel,而且ViewHolder和Model、View进行双向绑定。当View发生改变时,ViewModel通知Model进行更新数据;当Model数据更新后,ViewModel通知View更新。

更多相关文章

  1. 【Android文档】Android界面绘制流程--------How Android(安卓)D
  2. [置顶] 我的Android进阶之旅------>Android实现数据存储技术
  3. Android应用程序组件Content Provider应用实例
  4. Android数据与服务器交互的GET,POST,HTTPGET,HTTPPOST的使用
  5. Android(安卓)SMS(二)—— 读取短信保存到 SQLite
  6. 分享七个非常有用的Android开发工具和工具包
  7. Android(安卓)高手进阶教程(十三)之----Android(安卓)数据库SQLi
  8. 第五章 以数据为中心—数据存取(3)
  9. Android(安卓)4.0开发环境搭建和测试

随机推荐

  1. android中相关的图形类
  2. Android之Handler详解(三)
  3. (20120801)android文件的读写SD卡总结
  4. Android(安卓)Binder框架实现之Framework
  5. 【摘录】ubuntu (10.04)上安装google and
  6. android achartengine实时柱状图例子
  7. Android中使用Android studio生成正式签
  8. Android屏幕及view的截图实例详解
  9. android 限制编辑框输入中文
  10. [读书笔记]Android LayoutInflater.infla