MVC结构的工作方式

MVC(模式——视图——控制结构)后隐藏的思想一个系统的可视方面应该从内部工作中分离出来,而内部on工作应依次从开始和控制内部工作的机制中分离出来。MVC结构首先由Smalltalk及其从业者所采纳。但现在已是一种广泛的设计模式。

模式指管理系统抽象内部状态和操作的代码。它处理数据库访问和大部分事务逻辑。模式没有可视组件,而是给出应用其他部分可以访问的应用编程接口。这使得编写一个从简单命令行接口测试和调试模式的驱动器程序成为可能。例如,在一个象棋游戏中,模式可能由表示棋子的对象和保存它们的一个简单的数组组成。模式可以具有指出其移动的次序,评价一个给定的移动是否合法以及从一个数组元素到另一个数组元素移动棋子的方法。模式没有提供棋盘的任何可视表示的代码。

视图是系统的表示层。它不进行数据库访问,也不包含事务逻辑。视图所具有的一点非可视代码被限制于表示逻辑,如要显示的对象数组的循环。通过设计,一个模式可以与多个视图相关,可能是一个图形用户接口(GUI)或一个打印的报告。

控制器是依据用户输入表示模式的过程。基于当前视图、模式的状态和用户采取的行为,控制器调用模式的API修改模式状态并选择下一视图。粗略的讲,控制器处理用户输入,而视图处理用户的输出。象棋游戏可以有两个控制器——一个传送游戏者的移动,一个选择计算机的移动。

留言列表

发表留言:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。