美文网首页
MVC设计模式

MVC设计模式

作者: 伍陆柒_ | 来源:发表于2019-01-31 11:23 被阅读0次

MVC简介

MVC(Model-View-Controller) 模式的基本思想是数据,显示和处理相分离。模型(Model)负责数据管理,视图(View)负责数据显示,控制器(Controller)负责业务逻辑和响应策略。

用户界面逻辑的更改往往比业务逻辑频繁,尤其是在基于Web的应用程序中。例如,可能添加新的用户界面页,或者可能完全打乱现有的页面布局。对显示的更改,尽可能地不要影响到数据和业务逻辑。

为什么要用MVC

目前大部分Web应用都是将数据代码和表示混在一起。经验比较丰富的开发者会将数据从表示层分离开来,但这通常不是很容易做到的,它需要精心的计划和不断的尝试。MVC从根本上强制性的将它们分开。尽管构造MVC应用需要一些额外的工作,但它带来的好处是无庸质疑的

图解

image.png

视图(View):
  视图是用户看到并与之交互的界面。对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括Adobe Flash和象XHTML,XML/XSL,WML等一些标识语言和Web services。如何处理应用程序的界面变得越来越有挑战性。MVC一个大的好处是它能为你的应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。

模型 (Model):
模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有最多的处理任务。例如它可能用象EJBs和ColdFusion Components这样的构件对象来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。

控制器(Controller):
  控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后确定用哪个视图来显示模型处理返回的数据。

现在我们总结MVC的处理过程,首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户

优点

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

(1) 有利于团队开发分工协作和质量控制,降低开发成本。
(2) 可以为一个模型在运行时同时建立和使用多个视图。变化-传播机制可以确保所有相关的视图及时得到模型数据变化,从而使所有关联的视图和控制器做到行为同步。
(3) 视图与控制器的可接插性,允许更换视图和控制器对象,而且可以根据需求动态的打开或关闭、甚至在运行期间进行对象替换。
(4) 模型的可移植性。因为模型是独立于视图的,所以可以把一个模型独立地移植到新的平台工作。需要做的只是在新平台上对视图和控制器进行新的修改。
(5) 潜在的框架结构。可以基于此模型建立应用程序框架,不仅仅是用在设计界面的设计中。

相关文章

  • 游戏开发中的MVVM设计模式

    mvc设计模式 说到mvvm设计模式不得不先说说mvc设计模式。mvc其实不是一个模式,而是几个模式结合使用的结果...

  • 浅析 MVC

    一、 MVC 设计模式 1. 设计模式 设计模式,是通用代码(组织方式)的一种统称 2. MVC 是什么 MVC ...

  • iOS开发之MVVM+RAC架构模式

    在说MVVM之前,首先要了解我们最常用的MVC设计模式⬇️ 1.MVC设计模式 苹果官方将MVC设计模式作为iOS...

  • 浅析 MVC

    一、MVC是什么? MVC是一种设计模式(那设计模式又是什么呢?简单粗暴的说好用的东西就是设计模式),MVC能够使...

  • 对angularJS一些概念的理解

    angularJS是以MVC为设计模式的JS框架 MVC(Model View Controller)设计模式(d...

  • 面试题总结(二)

    常用的设计模式:MVC、工厂、代理、KVO MVC设计模式 MVC是一种架构模式,M表示数据模型Model,V表示...

  • JavaWeb入门——MVC

    1.MVC设计模式 1.1MVC模式 1.2MVC模式示例 index.jsp WelcomeServlet.ja...

  • iOS 设计模式 一

    设计模式随记 系统架构模式 1. MVC - MVVM - MVP - MVVM、MVC协调版 MVC :...

  • MVC设计模式

    MVC设计模式MVC设计模式 M:Model 数据模型 V:View 视图 C: Controller 控制器 (...

  • Android开发热门前沿知识,看这些就够啦

    1. Android架构设计模式 MVC架构设计模式:MVC全名是Model View Controller,是模...

网友评论

      本文标题:MVC设计模式

      本文链接:https://www.haomeiwen.com/subject/jyrksqtx.html