前言
框架是用来软件设计进行分工的;设计模式是小巧的,对具体问题提出解决方案,以提高代码复用滤,提高耦合性。
1、MVC的概念
MVC模式(Model–view–controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。
2、MVC的组成
控制器(Controller)- 负责转发请求,对请求进行处理。
视图(View) - 界面设计人员进行图形界面设计。
模型(Model) - 程序员编写程序应有的功能(实现算法等等)、数据库专家进行数据管理和数据库设计(可以实现具体的功能)。
3、组件的互动
将应用程序划分为三种组件,模型 - 视图 - 控制器(MVC)设计定义它们之间的相互作用。
模型(Model)用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。“ Model ”有对数据直接访问的权力,例如对数据库的访问。“Model”不依赖“View”和“Controller”,也就是说, Model 不关心它会被如何显示或是如何被操作。但是 Model 中数据的变化一般会通过一种刷新机制被公布。为了实现这种机制,那些用于监视此 Model 的 View 必须事先在此 Model 上注册,从而,View 可以了解在数据 Model 上发生的改变。(比较:观察者模式(软件设计模式))
视图(View)能够实现数据有目的的显示(理论上,这不是必需的)。在 View 中一般没有程序上的逻辑。为了实现 View 上的刷新功能,View 需要访问它监视的数据模型(Model),因此应该事先在被它监视的数据那里注册。
控制器(Controller)起到不同层面间的组织作用,用于控制应用程序的流程。它处理事件并作出响应。“事件”包括用户的行为和数据 Model 上的改变。
4、MVC的优点与缺点
优点:一,易于理解,技术含量不高。便于开发与维护。二,耦合性不高,表现层与业务层分离,有利于开发。
缺点:没有明确定义,完全理解很困难。开发MVC项目,将MVC模式运用其中,Model和View严格分离困难。其次,MVC模式将一个应用程序分成3个部件,对于小规模项目,反而会带来更多的工作量以及复杂性。
部分来源:维基百科:zh.wikipedia.org/wiki/MVC