Model view controller 什么是MVC(模型视图控制器)?

Model view controller 什么是MVC(模型视图控制器)?,model-view-controller,design-patterns,glossary,Model View Controller,Design Patterns,Glossary,我最近听到MVC(Model View Controller)这个词被人津津乐道,但它到底是什么呢?到目前为止,维基百科似乎对它的描述最好: 模型-视图-控制器(MVC)是软件工程中使用的一种体系结构模式。模式的成功使用将业务逻辑与用户界面考虑因素隔离开来,从而使应用程序更容易修改应用程序的可视外观或底层业务规则,而不会影响其他应用程序。在MVC中,模型表示应用程序的信息(数据)和用于操作数据的业务规则;视图对应于用户界面的元素,如文本、复选框项等;控制器管理与用户动作模型通信的细节,如击键和

我最近听到MVC(Model View Controller)这个词被人津津乐道,但它到底是什么呢?

到目前为止,维基百科似乎对它的描述最好:


模型-视图-控制器(MVC)是软件工程中使用的一种体系结构模式。模式的成功使用将业务逻辑与用户界面考虑因素隔离开来,从而使应用程序更容易修改应用程序的可视外观或底层业务规则,而不会影响其他应用程序。在MVC中,模型表示应用程序的信息(数据)和用于操作数据的业务规则;视图对应于用户界面的元素,如文本、复选框项等;控制器管理与用户动作模型通信的细节,如击键和鼠标移动

这篇关于Oreilly的博客文章已经介绍过了。

您可能想看看Martin Fowler对MVC、MVP和UI架构的总体看法

MVC是一种设计模式,最初是在smalltalk的旧时代首创的

其概念是,模型将表示您的应用程序状态和逻辑,控制器将处理“视图”之间的IO

视图是模型中状态的表示形式。例如,您的模型可能是电子表格文档,您可能有一个将其表示为电子表格的视图和一个将其表示为透视表的视图


现代MVC已经被假冒的MVC网页垃圾所污染,所以我会让其他人回答这个问题。

MVC是一种将用户界面元素划分为3个不同概念的方法。模型是接口操作的数据。视图是元素在视觉上(或听觉上)的表示方式。控制器是对数据进行操作的逻辑

例如,如果您想在UI中操作某些文本。一个简单的字符串可以表示数据。视图可以是文本字段。控制器是一种逻辑,它转换来自用户的输入(比如字符或鼠标输入),并对底层数据模型进行更改。

我喜欢Martin Fowler的作品。您将看到,严格地说,MVC在其最初的富UI编程领域实际上或多或少是死的。视图和控制器之间的区别不适用于大多数现代UI工具包


这个词最近似乎在网络编程界有了新的生命。我不确定这是否是真正的MVC,或者只是对一些密切相关但微妙不同的想法重复使用这个名称。

正如您问题上的标签所述,这是一种设计模式。但这可能对你没有帮助。基本上,它是一种将代码组织成逻辑分组的方法,可以将各个部分分开并易于修改

简化: 模型=数据结构/业务逻辑 视图=输出层(即HTML代码) 控制器=消息传输层

因此,当人们谈论MVC时,他们谈论的是将代码划分为这些逻辑组,以保持其干净、结构化,并希望松散耦合。通过遵循这种设计模式,您应该能够构建可以将视图完全更改为其他内容的应用程序,而无需接触控制器或模型(即从HTML切换到RSS)


有无数的教程,只有谷歌提供,我相信你会找到至少一个,用你喜欢的术语来解释它。

正如许多人已经说过的,MVC是一种设计模式。我现在正在教我的一位同事,我已经这样解释了:

Models-数据访问层。这可以是直接数据访问、web服务等

V视图-应用程序的表示层

C控制器-这是应用程序的业务逻辑


此模式增强了测试驱动的开发。

它是一种将应用程序(模型)的底层功能与其与用户(视图)交互的方式分离的方法。控制器协调模型和视图如何相互通信


尽管目前这是一个非常流行的话题,但重要的是要记住,阻止模型本身能够准确地确定其数据如何呈现给用户可能会被视为一件消极的事情。最明显的例子是HTML。HTML的初衷是通过控制器(浏览器)将模型(HTML)与视图(呈现的网页)明确分开。这一初衷遭到了强烈的反对,如果浏览器不能将页面像素完美地呈现给设计师想要的视图,浏览器就会受到批评。

施乐PARC的Trygve Reenskaug首先描述了MVC或Model view Controller用户界面范例。最早于1981年8月在Byte杂志第6卷第8期出版。

MVC是一种软件架构模式,它将表示与用户交互分离开来。 通常,模型由应用程序数据和与之交互的函数组成,而视图将这些数据呈现给用户;控制器在两者之间进行调解。

MVC设计模式:

4部分=用户、视图、控制器、模型

用户: -查看视图并使用控制器

型号: -保存数据并更新模型,以确定存在新的数据/状态

视图: -显示模型具有的数据

控制器: -获取用户请求以获取或设置信息,然后分别与视图或模型通信。 -它通过视图“获取”。
-它通过模型“设置”。

这里是对MVC的简单描述:

片段:

定义:它是一种将应用程序划分为多个功能层的设计模式

各层:

模型 表示数据。 它充当int