WHAT?是什么?
MVC的全名是Model View Controller,是模型-视图-控制器的缩写,是一种业务逻辑、数据,界面显示分离的方法组织代码。将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。
MVC是一种使用MVC设计创建Web应用程序的模式。
model(模型):表示应用程序核心。(比如数据库记录列表)
View(视图)显示数据(数据库记录)
Control(控制器)处理输入(写入数据库记录)
MVC是一个框架模式,它强制性的使应用程序的输入,处理和输出分开,使用MVC应用程序被分为3个核心部件:模型,视图,控制器。
特点:request请求直接到达Controller,不是View(页面)。
为什么要使用?
优点:
解耦合:
视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码。同样,业务逻辑改变只需要改动MVC的模型层即可,因为模型与控制器和视图相互分离,所以很容易改变应用程序的数据层和业务逻辑。
模型是自包含的,并且与控制器和视图相分离,所以很容易改变应用程序的数据层和业务规则。
重用性高:
MVC模式允许使用各种不同样式的视图来访问同一个服务器端的代码,因为多个视图能共享一个模型,他包括任何web(http)浏览器或者无线浏览器(wap),比如用户可以通过电脑或者手机来使用本软件,虽然显示层不同,但是处理的方式是一样的。
生命周期成本低:
MVC使开发和维护用户接口的技术含量降低。
部署快:
使用MVC模式使开发时间得到相当大的缩减,让程序员集中精力与业务逻辑,界面程序员集中精力于表现形式上。
可维护性高:
分离视图层和业务逻辑层也是的WEB应用更容易维护和修改。
缺点:
没有明确的定义:
完全理解MVC并不是很容易,使用MVC需要精心的计划,内部原理比较复杂,要花费时间去思考,同时由于模型和视图要严格分离,这样也给调试应用程序带来了一定的困难,每个部件在使用之前都要经过彻底的测试。