MVC 编程模型及其变种

MVC 编程模型及其变种

MVC全称是Model View Controller, 这是一个模型(model)-查看(view)-调节器(controller)缩写,这是通过通用的编程模型非.MVC当为了分离数据和视图首次提出,数据和实体之间的关系.这就是关注点分离的设计理念,也是单一职责原则(Single-Resposibility Principle).

在我们的开发过程中, 视图用来展现界面, 我们的模型处理业务, 持有数据, 而控制器是他们之间的中间人.

GoF四人组觉得MVC是"一组用于构建用户界面的类的集合,是其他三个经典的设计模式的演变:观察者模式, 策略模式, 组合模式".详细的实现可能还会用到工厂模式,装饰器模式

以下介绍一下MVC及其变种

VC模式(view --> controller)

这样的模式用于简单的界面,代码量不多的情况.一般业务代码都是控制器里.

  1. 用户点击屏幕,传递一个点击事件给视图
  2. 视图把点击事件传递给控制器
  3. 控制器运行逻辑
  4. 控制器把新的数据返回给视图
  5. 视图展示新的数据给用户

VMC模式(view --> model --> controller)

这样的模式以下,视图先传递的对象是模型,模型能处理的话,根本就不通知控制器,能够减轻控制器的代码量

  1. 用户点击屏幕, 传递一个点击事件给视图
  2. 视图把点击事件传递给模型
  3. 模型处理点击事件
  4. 模型处理不了的和额外要处理的发消息给控制器
  5. 控制器运行逻辑
  6. 控制器把数据返回给模型
  7. 模型再把数据返回给视图
  8. 视图展示新的数据给用户

VCM模式(view --> controller --> model)

这样的就是我们最常见的mvc模式了

  1. 用户点击屏幕, 传递一个点击事件给视图
  2. 视图把点击事件传递给控制器
  3. 控制器调用模型
  4. 模型运行逻辑
  5. 模型通知控制器,并返回数据
  6. 控制器接到数据后返回给视图
  7. 视图展示新数据

事实上,折腾这些,最后目的是了解边界,因此,人们可以并行工作.

版权声明:本文博主原创文章。博客,未经同意不得转载。

时间: 2024-08-05 15:29:37

MVC 编程模型及其变种的相关文章

MVC 编程模式及其变种

MVC 编程模式及其变种 MVC的全名是Model View Controller, 是模型(model)-视图(view)-控制器(controller)的缩写,这是一种很常见的编程模型.MVC最早提出的时候是为了把数据和视图分离开来,然后用控制器作为胶水来粘合数据和实体之间的关系.这就是关注点分离的设计理念,也是单一职责原则(Single-Resposibility Principle). 在我们的开发过程中, 视图用来展现界面, 我们的模型处理业务, 持有数据, 而控制器是他们之间的中间人

理解ASP.NET中MVC 编程模型 上

MVC 编程模型 MVC 是 ASP.NET 开发模型之一. MVC 是用于构建 web 应用程序的一种框架,使用 MVC (Model View Controller) 设计: Model(模型)表示应用程序核心(比如数据库记录列表) View(视图)对数据(数据库记录)进行显示 Controller(控制器)处理输入(写入数据库记录) MVC 模型同时提供对 HTML.CSS 以及 JavaScript 的完整控制. MVC 模型通过三个逻辑层来定义 web 应用程序: business l

理解ASP.NET中MVC 编程模型 第3章 数据模型

MVC 模型 MVC 模型包含所有应用程序逻辑(业务逻辑.验证逻辑.数据访问逻辑),除了纯视图和控制器逻辑.通过 MVC,模型可保存并操作应用程序数据. Models 文件夹 Models 文件夹包含表示应用程序模型的类. 以登录验证为例,创建一个 AccountModels.cs 文件,用于应用程序安全的模型. AccountModels 包含 LogOnModel.ChangePasswordModel 以及 RegisterModel. LogOnModel: public class L

ASP.NET MVC编程——模型

1 ViewModel 是一种专门提供给View使用的模型,使用ViewModel的理由是实体或领域模型所包含的属性比View使用的多或少,这种情况下实体或领域模型不适合View使用. 2模型绑定 默认模型绑定器 通过DefaultModelBinder解析客户端传来的数据,为控制器的操作参数列表赋值.   显示模型绑定 使用UpdateModel和TryUpdateModel显示绑定模型,不会检验未绑定字段. 使用UpdateModel方法绑定模型时,如果绑定失败就会抛异常,而TryUpdat

理解ASP.NET中MVC 编程模型 第5章 引用参考

类 类 说明 AcceptVerbsAttribute 表示一个特性,该特性指定操作方法将响应的 HTTP 谓词. ActionDescriptor 提供有关操作方法的信息,如操作方法的名称.控制器.参数.特性和筛选器. ActionExecutedContext 提供 ActionFilterAttribute 类的 ActionExecuted 方法的上下文. ActionExecutingContext 提供 ActionFilterAttribute 类的 ActionExecuting

理解ASP.NET中MVC 编程模型 第4章 HTML帮助器

HTML 帮助器用于修改 HTML 输出. HTML 帮助器 HTML 帮助器用于修改 HTML,HTML 帮助器没有事件模型和 view state.在大多数情况下,HTML 帮助器仅仅是返回字符串的方法. 标准的 HTML 帮助器 MVC 包含了大多数常用的 HTML 元素类型的标准帮助器,比如 HTML 链接和 HTML 表单元素. HTML 链接 呈现 HTML 链接的最简单方法是使用 HTML.ActionLink() 帮助器. 通过 MVC,Html.ActionLink() 不连接

理解ASP.NET中MVC 编程模型 第1章 MVC 样式和布局

添加布局 文件 _Layout.cshtml 表示应用程序中每个页面的布局.它位于 Views 文件夹中的 Shared 文件夹. 如以下示例 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>@ViewBag.Title</title> <link href="@Url.Content("~/Content/Sit

Atitit.web三大编程模型 Web Page Web Forms 和 MVC

Atitit.web三大编程模型 Web Page    Web Forms 和 MVC 1. 编程模型是 Web Forms 和 MVC (Model, View, Controller). 2. Web编程模型?在这里我们定义Web编程模型为如何编写代码生成html返回给最终用户的方法. 它包括两部分,一个是如何编写Web应用程序的规范,另一个则是实现这一规范的Web编程框架, 3. Web Pages 是最简单的 ASP.NET 网页开发编程模型.它提供了一种简单的方法将 HTML.CSS

ASP.NET MVC 编程参考

ASP.NET MVC 编程参考 转载请注明出处:http://surfsky.cnblogs.com MVC    参考 http://msdn.microsoft.com/zh-cn/dd408813.aspx    MVC 的基本思想        ·Module      : 模型.可以看做实体类,可用各种技术实现,例如Microsoft Entity Framework.NHibernate等        ·View        : 视图.可以与某个实体类关联,此时视图则负责展示该