`
jieAmei
  • 浏览: 30957 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论
阅读更多
1.首先介绍一下MVC的组成部分。
     M(Model):模形.数据层

     V(View) :视图.显示层

     C(Controllor):控制.业务逻辑层

MVC设计思想就是把数据访问、业务逻辑和应用程序分开,同时它还提高了系统的可维护性、可扩展性、可移植性和组件的可复用性。

2.1 MVC中的模型、视图和控制类

  (1) 模型包含了应用问题的核心数据、逻辑关系和计算功能,它封装了所需的数据,提供了完成问题处理的操作过程。控制器依据I/O的需要调用这些操作过程。
              模型还为视图获取显示数据而提供了访问其数据的操作。

             像数据库操作:DAO
             我们对数据库操作采用了一种策略模式。

  这种变化-传播机制体现在各个相互依赖部件之间的注册关系上。模型数据和状态的变化会激发这种变化-传播机制,它是模型、视图和控制器之间联系的纽带。

  (2) 视图通过显示的形式,把信息转达给用户。不同视图通过不同的显示,来表达模型的数据和状态信息。每个视图有一个更新操作,它可被变化-传播机制所    
             激活。当调用更新操作时,视图获得来自模型的数据值,并用它们来更新显示。

          在初始化时,通过与变化-传播机制的注册关系建立起所有视图与模型间的关联。视图与控制器之间保持着一对一的关系,每个视图创建一个相应的控制器。视  
             图提供给控制器处理显示的操作。因此,控制器可以获得主动激发界面更新的能力。

  (3) 控制器通过时间触发的方式,接受用户的输入。控制器如何获得事件依赖于界面的运行平台。控制器通过事件处理过程对输入事件进行处理,并为每个
             输入事件提供了相应的操作服务,把事件转化成对模型或相关视图的激发操作。

         如果控制器的行为依赖于模型的状态,则控制器应该在变化-传播机制中进行注册,并提供一个更新操作。这样,可以由模型的变化来改变控制器的行为,
            如禁止某些操作。

利用MVC设计思路方法设计这套通用接口在别应用模块中访问数据库时只这些通用接口即可避免了直接数据库系统提供数据库访问时接口不致问题将数据库应用部分和数据实际访问部分隔离开来这样可根据功能需求任意通用模块中界面可根据需求只需相应应用即可其他模块可原封不动功能扩充、修改及完善也只需改动数据库接口模块这样不但提高了通用性而且把员从考虑区别接口重复工作中解脱出来把精力放在功能应用设计开发上有利于软件Software工程化管理从而提高了开发效率[Page]

MVC的优点及不足之处

  MVC的优点表现在以下几个方面:

  (1) 可以为一个模型在运行时同时建立和使用多个视图。变化-传播机制可以确保所有相关的视图及时得到模型数据变化,从而使所有关联的视图和控制器做到行为同步。

  (2) 视图与控制器的可接插性,允许更换视图和控制器对象,而且可以根据需求动态的打开或关闭、甚至在运行期间进行对象替换。

  (3) 模型的可移植性。因为模型是独立于视图的,所以可以把一个模型独立地移植到新的平台工作。需要做的只是在新平台上对视图和控制器进行新的修改。

  (4) 潜在的框架结构。可以基于此模型建立应用程序框架,不仅仅是用在设计界面的设计中。

   MVC的不足之处

  MVC的不足表现在以下几个方面:

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

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

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

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

  7 小结

与软件所处理问题的内在模型相比较,用户界面是需要经常发生变化的,采用MVC设计模式可以在满足对界面要求的同时,使软件的计算模型独立于界面的构 成。本文首先介绍了MVC的三个组成构件(模型构件、视图构件和控制构件),以及实现基于MVC的应用需要完成的工作;接着,对MVC的优点及不足之处进 行了分析;最后,介绍了几种其他类似的结构模式,并对MVC和PAC进行了比较。

8.在MVC当中所用到的设计模式:

   MVC设计模式由23中设计模式组合而成:为什么这么说呢,因为从MVC的结构组成部分来看,它由三大部分组成:

  1>. M(模型),它是数据的反映,封装了数据,和数据操作;也就是处理数据的地方;
  2>.V(显示),它是前台页面显示的一个重要组成;
  3>.C(控制),它主要是写一些控制逻辑。
[align=center][/align]
分享到:
评论

相关推荐

    浅析MVC模式在WEB开发中的应用

    ### 浅析MVC模式在WEB开发中的应用 #### 引言 随着互联网技术的快速发展,Web应用程序变得越来越复杂和庞大。传统的嵌套和面向过程的开发方式已无法满足当前项目的需求。在这种背景下,MVC(Model-View-Controller...

    浅析MVC模式在WEB开发中的应用 毕业论文

    在实际开发中,开发者应根据项目需求灵活选择是否使用MVC,以及如何优化MVC结构,以达到最佳的开发效果。 关键词:MVC,PHP,设计模式,Blog 1. **引言** 2. **PHP介绍与Web开发流程的发展** - PHP语言概述 - ...

    浅析MVC模式在WEB开发中的应用.pdf

    MVC模式在WEB开发中的应用 MVC(Model-View-Controller)是一种软件架构模式,它广泛应用于WEB开发中,帮助开发者更好地组织和管理复杂的WEB项目。MVC模式的核心思想是将应用程序分为三个基本部分:模型(Model)、...

    浅析JavaScript MVC框架在系统开发中的应用.pdf

    "浅析JavaScript MVC框架在系统开发中的应用" JavaScript MVC 框架作为一种常用的模式,在系统开发中的应用具有重要的意义。通过借助MVC架构的优势,大大的提高了系统运行的稳定性。 JavaScript MVC 框架包括多种...

    浅析JavaScript MVC框架在Web开发中的应用.pdf

    浅析JavaScript MVC框架在Web开发中的应用 JavaScript MVC框架是当前Web开发中的热门话题之一,MVC全称为Model-View-Controller,分别对应模型、视图和控制器三个部分。该框架的出现解决了传统的JavaScript开发中...

    Extjs4 MVC模式浅析.pdf

    《Extjs4 MVC模式浅析》 Extjs4在开发大型客户端程序时,引入了MVC(Model-View-Controller)架构,以解决代码组织和维护的难题。MVC架构是一种设计模式,它将应用程序分为三个主要部分:模型(Model)、视图(View...

    Extjs4 MVC模式浅析.docx

    ExtJS 4引入了MVC(Model-View-Controller)模式,以解决大型客户端应用程序的组织和维护问题。在ExtJS 4中,MVC架构提供了结构化代码的方法,使得开发更加有序和易于理解。 **Model(模型)** 在ExtJS 4中,Model...

    浅析Asp.net MVC 中Ajax的使用

    一、使用System.Web.Mvc.Ajax  1.1 System.Web.Mvc.Ajax.BeginForm  1.2 System.Web.Mvc.Ajax.ActionLink 二、手工打造自己的“非介入式”Javascript” 一、使用System.Web.Mvc.Ajax   1.1 System.Web.Mvc.Ajax....

    Android开发中的MVC设计模式浅析

    在Android开发中,MVC(Model-View-Controller)设计模式是一种常见的架构模式,它将应用程序的组件分为三个主要部分,以实现更好的分离关注点和模块化。下面我们将深入探讨MVC在Android开发中的应用。 首先,理解...

    深入浅析用PHP实现MVC

    MVC足以应对大多数的情况,但还有一些情况是其不太适合的,如比较简单的个人博客,对于只有几百篇文章量级的博客,使用MVC让人觉得有些太复杂了;同样对于新浪等门户网站,使用MVC,将有大量的文件被加载,对于速度...

    浅析PHP程序设计中的MVC编程思想

    MVC模式在大型项目开发中尤其重要,因为它有助于创建清晰的代码组织结构,便于团队协作和后期维护。 1. MVC的组成部分: - **Model(模型)**:模型负责与数据源交互,通常涉及数据库操作。它封装了业务逻辑和数据...

    .NET MVC中ViewData,ViewBag和TempData的区别浅析

    本文分析了.NET MVC中ViewData,ViewBag和TempData的区别。分享给大家供大家参考。具体分析如下: ViewData和TempData是字典类型,赋值方式用字典方式,如: 代码如下:ViewData[“myName”] ViewBag是动态类型,使用...

    浅析@ReponseBody和@RequestBody注解

    浅析@ReponseBody和@RequestBody注解 @ReponseBody和@RequestBody是Spring MVC框架中两个重要的注解,分别用于处理HTTP请求和响应体。下面我们将详细分析这两个注解的作用和Spring MVC内部是如何对他们进行解析的。...

    浅析java中 Spring MVC 拦截器作用及其实现

    在Java的Spring MVC框架中,拦截器(Interceptor)是一个强大的工具,它允许开发者在请求处理的前后阶段执行自定义逻辑,比如进行权限检查、日志记录、性能统计等。这篇文章将深入探讨Spring MVC拦截器的作用、实现...

    设计模式的理解浅析

    ### 设计模式的理解浅析 #### 单例模式在共享数据中的应用 单例模式是一种常用的软件设计模式,它的核心在于确保某个类只有一个实例,并提供一个全局访问点。这种模式非常适用于那些在整个项目中需要一个共享访问...

Global site tag (gtag.js) - Google Analytics