原文:https://www.yiibai.com/asp.net_mvc/asp.net_mvc_pattern.html
MVC(模型 - 视图 - 控制器)设计模式实际上已经存在了几十年,并且已经用于许多不同的技术。 从Smalltalk到C++到Java的一切,现在C#和.NET使用这种设计模式来构建用户界面。
以下是MVC模式的一些显着特点 -
最初它在1979年被命名为:Thing-Model-View-Editor
,然后它被简化为:Model-View-Controller
。
这是一种分离应用程序中的问题(例如,将数据访问逻辑与显示逻辑分离)的强大而优雅的手段,并且非常适合于Web应用程序。
其明确的关注点分离确实为应用程序的设计增添了一点额外的复杂性,但非凡的好处超过了额外的工作量。
MVC体系结构模式将应用程序的用户界面(UI)分为三个主要部分。
MVC背后的想法是:将拥有一个名为视图(View)的组件,该组件负责呈现用户界面,不管它是HTML还是桌面应用程序上的UI小部件。
该视图与模型交互通信,该模型包含视图需要显示的所有数据。视图通常就没有太多的逻辑。
在一个Web应用程序中,视图可能根本没有任何关联的代码。 它可能只是HTML,然后是从模型中获取数据片段的表达式,并将它们插入到视图中的正确位置来构建HTML模板并显示给用户。
组织的控制器就是一切。 当一个HTTP请求到达MVC应用程序时,该请求被路由到一个控制器,然后由控制器来与数据库,文件系统或模型进行通信。