MVC英文为:Model-View-Contoller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样
一个应用被分成三个层一一模型层、视图层、控制层。
M(Model)模型:
视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet.随着应用复杂性和规模性,
界面的处理也变得具有挑战性。
V(View)视图:
就是业务流程/状态的处理以及业务规则的指定。业务流程的处理过程对其它层来说是黑箱操作。
C(Controller)控制:
控制(Contoller)可以理解为用户接受请求,将模型与视图匹配一起,共同完成用户的请求。划分控制层的作用也很明显,它清除地告诉
你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。
MVC的优点:
1,低耦合性:
视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码,同样,一个应用的业务流程或者业务规则的
改变只需要改动MVC的模型层即可。因为模型与控制器相分离,所以很容易改变应用程序的数据层和业务规则。
2,高重用性和可使用性:
MVC模式允许你使用各种不同样式的视图来访问同一个服务器端的代码。它包括任何WEB(HTTP)浏览器或者无线浏览器(wap)
,比如可以通过电脑也可通过手机来订购某样产品,虽然订购的方式不一样,但处理订购产品的方式是一样的。由于模型返回的数据没有进行格式化,
所以同样的构件能被不同的界面使用。
3,较低的生命周期成本:
MVC使开发和维护用户接口的技术含量降低.
4,快速的部署:
使用MVC模式使开发时间得到相当大的缩减,它使程序员(Java开发人员)集中于业务逻辑,界面程序员(HTML和JSP开发人员)集中精力于表现
形式上。
5,可维护性:
分离视图层和业务逻辑层也使得WEB应用更易于维护和修改。
6,有利于软件工程化管理:
有利于工程化、工具化管理程序代码。
MVC的缺点:
MVC的缺点是由于它没有明确的定义,所以完全理解不是很容易。使用MVC需要精心的计划,由于它的内部原理比较复杂,所以需要花费一些时间去思考。