[初级教程]第一节--回顾 MVC 的原理
一、MVC 是什么?
MVC 是一个杂糅多个设计模式的框架,它强制性的使应用程序的输入、处理和输出分开。MVC 应用程序总是由这3个部分组成:模型--视图--控制器。它们各自处理自己的任务。
设计模式的定义:每一个模式描述了一个在我们周围不断重复发生的问题,以及解决此问题的核心方法。
框架的定义:框架是构成一类特定软件可复用设计的一组互相协作的类。
二、MVC 的工作原理
Event(事件)导致 Controller 改变 Model 或 View,或者同时改变两者。只要 Controller 改变 Model 的数据或者属性,所有依赖的 View 就会自动更新。类似的,只要 Controller 改变了 View,View 会从潜在的 Model 中获取数据来刷新自己。
三、M、V、C 各个模块的作用
根据 Smalltalk 语言团提出的 MVC 程序设计思想,每个模块的作用如下。
M(模型)的作用:- 封装应用程序的状态和实现应用程序的功能(逻辑、算法)
- 响应状态查询
- 通知视图改变
- 解释模型并发送模型更新请求
- 截获用户的输入,发送给控制器
- 允许控制器选择视图
- 定义应用程序的行为
- 将用户的动作映射成模型的更新
- 选择响应的视图
四、为什么要将程序分别归类为 M、V、C 各个模块
--那是为了:
- 程序的健壮性
- 代码的易维护性
- 整个系统的可扩展性
- 项目的可持续性开发
- 团队多人合作开发
- 更加灵活、主动地应对需求变更
- ...
在很多类似的项目中,有可能只是 view 变了,那么新写一个项目只需要改变 view,以及依赖它的命令类。模型层几乎完全可以复用。
五、尽早采用 MVC 的方式重构项目
以上的总总好处只要在自己意识到他们的价值并且做出改变之后才会更加深刻的体会到。所以,如果想体会我所说的这些好处,那么尽快开动起来吧,尽早重构自己的项目,体会使用 MVC 框架之后的编程快感。
