【Android与MVC设计模式】犀渠玉剑良家子,白马金羁侠少年。这篇文章主要讲述Android与MVC设计模式相关的知识,希望能为你提供帮助。
写在前面,之前做过一段时间移动开发,后来因为工作原因搁浅了,最新重新拿起android权威编程指南学习,顺道做个学习笔记。
首先呢,我想说无论是计算机科班出身还是培训班出身,都听说过高内聚低耦合以及MVC这两个词。MVC模式就是为了解决软件工程过程中内聚与耦合的关系。(维基中查看内聚 耦合的定义)
文章图片
MVC模式(Model–view–controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。
MVC模式最早由Trygve Reenskaug在1978年提出[1],施乐帕罗奥多研究中心(Xerox PARC)在20世纪80年代为程序语言Smalltalk发明的一种软件架构。MVC模式的目的是实现一种动态的程序设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。除此之外,此模式通过对复杂度的简化,使程序结构更加直观。软件系统通过对自身基本部分分离的同时也赋予了各个基本部分应有的功能。专业人员可以通过自身的专长分组:
- 控制器(Controller)- 负责转发请求,对请求进行处理。
- 视图(View) - 界面设计人员进行图形界面设计。
- 模型(Model) - 程序员编写程序应有的功能(实现算法等等)、数据库专家进行数据管理和数据库设计(可以实现具体的功能)。
文章图片
- 模型(Model) 用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。“ Model ”有对数据直接访问的权力,例如对数据库的访问。“Model”不依赖“View”和“Controller”,也就是说, Model 不关心它会被如何显示或是如何被操作。但是 Model 中数据的变化一般会通过一种刷新机制被公布。为了实现这种机制,那些用于监视此 Model 的 View 必须事先在此 Model 上注册,从而,View 可以了解在数据 Model 上发生的改变。
- 视图(View)能够实现数据有目的的显示(理论上,这不是必需的)。在 View 中一般没有程序上的逻辑。为了实现 View 上的刷新功能,View 需要访问它监视的数据模型(Model),因此应该事先在被它监视的数据那里注册。
- 控制器(Controller)起到不同层面间的组织作用,用于控制应用程序的流程。它处理事件并作出响应。“事件”包括用户的行为和数据 Model 上的改变。
在Android应用开发中,就是基于最基础的MVC架构进行设计。
文章图片
如图是Android中MVC架构基本模式
- 模型对象存储着应用的数据和业务逻辑,为存储和管理应用数据。
- 控制器是视图对象和模型对象的联系纽带,管理着模型对象和视图对象的数据流动,控制着诸如触发事件之类的响应事件。
- 视图对象就是用户感受到的界面逻辑。
推荐阅读
- Android N 7classes.dex反编译失败(com.googlecode.d2j.DexException: not support version.)
- ASP.NET Core(使用Dapper和SwaggerUI来丰富你的系统框架)
- [BZOJ1710][Usaco2007 Open]Cheappal 廉价回文
- android中的Handler消息机制
- Android内存分析和调优(上)
- AndroidStudio用Cmake方式编译NDK代码(cmake配置.a库)
- 在Android应用程序中实现推送通知
- 添加面部跟踪和实时识别到您的Android应用程序
- mac下appium启动