`

MVC模式

 
阅读更多

MVC是一种设计模式。

 

MVC代表着Model-View-Controller,即模型-视图-控制器。

 

MVC模式的目的就是实现Web系统的只能分工。Model层实现系统中的业务逻辑;View层用于与用户的交互,通常使用JSP来实现;Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时他可以解释用户的输入并将它们映射为模型层可以执行的操作。

 

框架为什么要用MVC设计模式呢?

这是因为,MVC模式能够减少依赖;能减少代码的复制;能把不同人员的负责分开;使性能优化的成为可能;易于测试。

 

 

MVC的优点:

1:耦合性低
视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码,同样,一个应用的业务流程或者业务规则的改变只需要改动MVC的模型层即可。因为模型与控制器和视图相分离,所以很容易改变应用程序的数据层和业务规则。

2:重用性高
随着技术的不断进步,需要用越来越多的方式来访问应用程序。MVC模式允许使用各种不同样式的视图来访问同一个服务器端的代码,因为多个视图能共享一个模型,它包括任何WEB(HTTP)浏览器或者无线浏览器(wap),比如,用户可以通过电脑也可通过手机来订购某样产品,虽然订购的方式不一样,但处理订购产品的方式是一样的。由于模型返回的数据没有进行格式化,所以同样的构件能被不同的界面使用。
MVC使开发和维护用户接口的技术含量降低。

3:部署快
使用MVC模式使开发时间得到相当大的缩减,它使程序员(Java开发人员)集中精力于业务逻辑,界面程序员(HTML和JSP开发人员)集中精力于表现形式上。

4:可维护性高
分离视图层和业务逻辑层也使得WEB应用更易于维护和修改。

5:有利软件工程化管理
由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通过工程化、工具化管理程序代码。控制器也提供了一个好处,就是可以使用控制器来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段。给定一些可重用的模型和视图,控制器可以根据用户的需求选择模型进行处理,然后选择视图将处理结果显示给用户。

缺点:

1:没有明确的定义
完全理解MVC并不是很容易。使用MVC需要精心的计划,由于它的内部原理比较复杂,所以需要花费一些时间去思考。同时由于模型和视图要严格的分离,这样也给调试应用程序带来了一定的困难。每个构件在使用之前都需要经过彻底的测试。

2:不适合小型,中等规模的应用程序
花费大量时间将MVC应用到规模并不是很大的应用程序通常会得不偿失。

3:增加系统结构和实现的复杂性
对于简单的界面,严格遵循MVC,使模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。

4:视图与控制器间的过于紧密的连接
视图与控制器是相互分离,但却是联系紧密的部件,视图没有控制器的存在,其应用是很有限的,反之亦然,这样就妨碍了他们的独立重用。

5:视图对模型数据的低效率访问
依据模型操作接口的不同,视图可能需要多次调用才能获得足够的显示数据。对未变化数据的不必要的频繁访问,也将损害操作性能。

6:一般高级的界面工具或构造器不支持模式
改造这些工具以适应MVC需要和建立分离的部件的代价是很高的,会造成MVC使用的困难。

 

 

 

(优缺点出自:https://zhidao.baidu.com/question/312965991.html

分享到:
评论

相关推荐

    网上购买图书案例MVC模式

    【网上购买图书案例MVC模式】是一个典型的软件开发实践,主要使用了Model-View-Controller(MVC)架构模式来构建一个在线图书销售系统。在这样的系统中,MVC模式帮助我们有效地分离业务逻辑、数据处理和用户界面,...

    MVC模式实现书城购物车系统

    本项目是一个基于JavaEE技术栈的MVC模式实现的网上书城购物车系统。这个系统的设计目的是为了帮助初学者深入理解MVC(Model-View-Controller)设计模式,以及如何在实际开发中应用这一模式来构建一个功能完善的电子...

    MVC模式(求三角形面积、计算).pptx

    MVC 模式详解 MVC 模式是软件设计中一种非常重要的模式,它将软件或组件分为三个部分:模型(Model)、视图(View)和控制器(Controller)。这种模式已经 menjadi 必备的开发模式之一,广泛应用于 Web 开发、移动...

    运用MVC模式及观察者模式的java小程序

    在这个名为“运用MVC模式及观察者模式的java小程序”的项目中,我们重点探讨了两种经典的设计模式:Model-View-Controller(MVC)模式和Observer(观察者)模式。这两种模式在JavaWeb开发中扮演着至关重要的角色。 ...

    mvc模式jsp计算器

    **MVC模式与JSP计算器应用** 在Web开发领域,MVC(Model-View-Controller)模式是一种常用的设计模式,它将应用程序分为三个主要部分:模型(Model)、视图(View)和控制器(Controller)。MVC模式的主要目标是...

    基于jspMVC模式的成绩管理系统

    **基于jspMVC模式的成绩管理系统详解** 在信息技术领域,开发Web应用程序时,Model-View-Controller(MVC)模式是一种广泛采用的设计模式。本项目"基于jspMVC模式的成绩管理系统"是一个采用JavaServer Pages(JSP)...

    经典mvc模式开发好

    **经典MVC模式详解** **一、MVC模式概述** MVC(Model-View-Controller)模式是一种软件设计模式,广泛应用于Web应用开发中,它将应用程序分为三个核心部分:模型(Model)、视图(View)和控制器(Controller)。...

    基于 MVC 模式的博客(BLOG)系统的设计与实现

    ### 基于MVC模式的博客(BLOG)系统的设计与实现 #### 一、引言 随着互联网技术的快速发展,博客(BLOG)已成为一种流行的在线信息分享平台。为了提高博客系统的性能、稳定性和易维护性,本研究采用MVC(Model-View-...

    C++的MVC模式简单示例

    **C++中的MVC模式详解** MVC(Model-View-Controller)模式是一种软件设计模式,广泛应用于构建用户界面,特别是在Web开发和图形用户界面(GUI)应用中。C++作为一个强大的面向对象编程语言,同样可以利用MVC模式来...

    mvc模式(软件架构思想)

    ### MVC模式解析与实践 #### 一、MVC模式概览 MVC,即Model-View-Controller(模型-视图-控制器),是一种被广泛应用于软件工程,特别是Web应用程序开发中的设计模式。其核心思想是将应用程序的业务逻辑、用户界面...

    基于mvc模式下的登录注册

    总的来说,"基于MVC模式下的登录注册"项目展示了如何在Web开发中利用MVC模式来分离关注点,提高代码的可维护性和可扩展性。通过合理划分模型、视图和控制器的职责,我们可以更有效地组织和管理代码,同时提供更直观...

    MVC模式网上书店系统

    **MVC模式网上书店系统详解** MVC(Model-View-Controller)模式是一种软件设计模式,广泛应用于构建Web应用程序,特别是在Java EE、.NET等框架中。它将应用程序的业务逻辑、用户界面和数据访问层分离,使得各部分...

    MVC模式jsp网上书店系统

    **MVC模式** MVC(Model-View-Controller)模式是一种广泛应用在Web开发中的软件设计模式,它将应用程序分为三个核心部分:模型(Model)、视图(View)和控制器(Controller)。这种分离使得代码结构清晰,易于...

    MVC模式下多层分布式软件系统架构设计.pdf

    MVC模式下多层分布式软件系统架构设计是软件工程领域中的一种经典架构方式,尤其适用于复杂系统的构建。MVC即Model-View-Controller(模型-视图-控制器),是一种用于设计用户界面的设计模式,通过将业务逻辑、用户...

    MVC模式概述

    ### MVC模式概述 MVC(Model-View-Controller)是一种广泛应用于软件工程,特别是Web应用程序开发中的设计模式。它的核心思想在于将应用分为三个主要部分:模型(Model)、视图(View)和控制器(Controller)。...

    MVC模式的Java编写学生管理系统源码

    **MVC模式详解** MVC(Model-View-Controller)模式是一种软件设计模式,广泛应用于构建Web应用程序,尤其是在Java开发中。它将应用程序分为三个主要组件:模型(Model)、视图(View)和控制器(Controller),以...

    MVC模式图

    根据提供的信息,“MVC模式图”,我们来详细探讨一下MVC(Model-View-Controller)设计模式的概念、工作原理以及应用场景等内容。 ### MVC设计模式概述 MVC是一种软件架构模式,广泛应用于用户界面的设计与开发之...

    基于MVC模式图书管理系统论文

    "基于MVC模式图书管理系统论文" 本文主要介绍了基于MVC模式的图书管理系统的设计与实现。该系统使用了MVC设计模式和Struts框架,旨在提高图书管理的效率和准确性。 知识点1:MVC模式的优点 MVC模式是一种软件设计...

    PHP__单入口MVC模式实例

    单入口MVC模式则是这种模式的一个变体,它强制所有请求都通过一个单一的入口点进入,从而更好地控制和管理应用程序流程。 首先,让我们详细了解一下“单入口”概念。在单入口MVC模式下,所有的HTTP请求都会通过一个...

Global site tag (gtag.js) - Google Analytics