概要
- MVC模式在网上查询和学习了挺多。在学习的过程中发现虽然前辈们的思想基本相同,但在具体实现的功能分类上略有区别。因此想以个人的浅薄经验做个总结。
- 本文章仅仅是自己学习的一个总结,和MVC模式的专业解释必然有较大差异。
什么是MVC模式
- 首先MVC模式是为界面开发,或者说网站开发这种纯功能性内容所服务的指导思想。因此它不适合于其他,如游戏中的即时战斗,其他的交互功能的开发。
- 它将程序功能分为数据模型(Model),视图显示(View)以及处理控制(Controller)三大类。
MVC模式各部分含义
- 其中数据模型可以从数据库知识的角度去看待,它相当于是一类数据的定义,存储了一系列数据,这些数据有可能是可读的,例如学生信息。有可能是不易读的,例如二进制数据等。
- 视图显示则是用于显示数据的对外部分。通常它显示的内容和形式与数据模型大有不同,但也不排除相同的情况。从开发的角度,视图层通常代表着显示的UI控件,或者控制这些控件的程序代码。
- 而处理控制则是作为视图层与数据模型层沟通的桥梁。它通常用于处理用户交互。一般的流程是用户交互,处理控制进行处理,对数据进行获取或更新操作,再将新的结果传给视图层以更新显示。它通常代表着可交互的UI控件或者控制这些控件的程序代码。
MVC模式下的一般运行流程
- 初始化阶段,由Controller对Model中的数据进行读取,经过有条件地对数据进行处理