模型视图控制器的起源

MVC(模型视图控制器)是一种用于在电子设备上实现用户界面的软件模式。 根据其架构师Trygve Reenskaug的说法,“ MVC的创建是为了解决使用户可以从多个角度查看其信息的一般问题的解决方案。” Trygve在施乐Palo Alto研究实验室担任客座科学家时就想到了MVC。 PARC),在1978年夏季至1979年之间。在PARC期间,他专注于支持LRG(学习研究小组),该小组正在开发DynaBook。

DynaBook是对现在称为平板电脑的早期概念。 它的创建者设想了一种通用工具,可以弥合用户和与她相关的信息之间的鸿沟。 早期的概念是考虑到儿童的,因此DynaBook可以用作所有年龄段儿童的学习计算机。 因此,它必须易于使用,并且必须直观。 正如创作者所描述的:“ 用户就是沙皇; LRG所做的一切都是为了支持他。”

在这种背景下,创建了MVC,将其作为一种新型个人计算机的支持软件体系结构。 一台将可用性放在首位而不影响功能的计算机。 这种想法在MVC的原始理论化中显而易见。 正如Trygve所说的那样, “ MVC的基本目的是弥合人类用户的心理模型与计算机中存在的数字模型之间的鸿沟。 理想的MVC解决方案支持用户直接查看和操作域信息的错觉。 如果用户需要在不同的上下文中和/或从不同的角度同时看到相同的模型元素,则该结构很有用。”

MVC的第一个实现是由LRG集团以一种称为Smalltalk的语言完成的。 smalltalk是第一种真正的面向对象语言。 如今,MVC已成为桌面GUI,Web应用程序甚至移动应用程序的首选架构模式。 它也已成为Web最受欢迎的Web框架的选择模式。