MVC架构模式
MVC架构模式
摘要:MVC模式是开发过程的一个非常重要的模式,他是一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。最典型的MVC就是JSP + servlet + javabean的模式
关键字:1.MVC 2.模型、视图、控制器 3.业务逻辑、数据、界面显示分离
MVC architecture mode
Gaoyu
Shijiazhuang Tiedao University
Abstract: MVC pattern is a very important pattern in the development process. It is a model of software design. It organizes code with a method of separating business logic, data and interface display, and gathers business logic into a component. While improving and customizing the interface and user interaction, it does not need to rewrite business logic. It forces the separation of application input, processing, and output. Using MVC application is divided into three core components: model, view and controller. They each handle their own tasks. The most typical MVC is JSP + servlet + JavaBean
Keywords: 1. MVC 2. Model, view, controller 3. Business logic, data, interface display separation
引言:之前只知道使用Javabean+Servlet+jsp或者是strust2、以及Spring进行web网页的编程,但是并不了解他的具体的原理,只知道是一种固定的模式,而不了解为何要这样做。知道今天看了一下具体的MVC框架的架构的具体内容,才发现其中的奥秘,确实有独到之处。用到的这种网页开发基本上都是采用的这种MVC的架构模式。所以今天就MVC来说谈谈自己的学到的一些内容。
一.MVC的定义
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写
Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。模型表示企业数据和业务规则。
View(视图)是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。是用户看到并与之交互的界面
Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。控制器接受用户的输入并调用模型和视图去完成用户的需求
二.MVC的特点
1.耦合性低
视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码,同样,一个应用的业务流程或者业务规则的改变只需要改动MVC的模型层即可。因为模型与控制器和视图相分离,所以很容易改变应用程序的数据层和业务规则。
2.重用性高
随着技术的不断进步,需要用越来越多的方式来访问应用程序。MVC模式允许使用各种不同样式的视图来访问同一个服务器端的代码,因为多个视图能共享一个模型,它包括任何WEB(HTTP)浏览器或者无线浏览器(wap)由于模型返回的数据没有进行格式化,所以同样的构件能被不同的界面使用。对于使用不同的开发语言进行界面开发时改变的仅仅是页面层而已,而控制层和模型层无需做任何改变。由于已经将数据和业务规则从表示层分开,所以可以最大化的重用代码了。模型也有状态管理和数据持久性处理的功能
3.部署快
使用MVC模式使开发时间得到相当大的缩减,它使程序员(Java开发人员)集中精力于业务逻辑,界面程序员(HTML和JSP开发人员)集中精力于表现形式上。各方面协同工作且互不干扰。
4.可维护性高
分离视图层和业务逻辑层也使得WEB应用更易于维护和修改。界面中所需要进行的操作不变,就可以重用原来的业务逻辑,并不会影响系统的正常使用。便于实现系统的维护和修改
三.MVC的缺陷
1.没有明确的定义
完全理解MVC并不是很容易。使用MVC需要精心的计划,由于它的内部原理比较复杂,所以需要花费一些时间去思考。同时由于模型和视图要严格的分离,这样也给调试应用程序带来了一定的困难。每个构件在使用之前都需要经过彻底的测试。所以对于MVC模式来说就不适合小型,中等规模的应用程序,小型的系统没有必要去花费太多的时间去实现MVC。对于简单的界面,严格遵循MVC,使模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。
2.视图与控制器间的过于紧密的连接
视图与控制器是相互分离,但却是联系紧密的部件,视图没有控制器的存在,其应用是很有限的,反之亦然,这样就妨碍了他们的独立重用。每一个模式中的逻辑以及界面都是配套使用的,三个部件缺一不可
3.视图对模型数据的低效率访问
依据模型操作接口的不同,视图可能需要多次调用才能获得足够的显示数据。对未变化数据的不必要的频繁访问,也将损害操作性能。
四.总结
MVC对于以后的工作来说异常重要,并且MVC模式对于大型的web应用程序是再适合不多了,让整个程序实现了三层的分层,使得三个方面的开发可以同时进行,提高了开发的效率,并且对于界面还是不断的进行修改了,更新,这对于一个上午网站来说是在合适不过了。通过学习之后我才发现,我们现在学到了仅仅是MVC的一种思想,一种简单的模式,要想完全的掌握并应用MVC还是需要不断的学习的。