在MVC中,与应用程序模型相对的GUI模型是什么?



在开发Java Swing MVC应用程序时,相对于应用程序模型的GUI模型是什么?为什么它与MVC相关?

我在这里阅读了有关它的示例(尽管该示例不使用 GUI 模型)。在此处,此处和此处找到有关它的更多信息。同样在GUI 状态与应用程序数据模型部分的 Swing 架构概述中。

引用示例的作者:

最后,这就是我在Java Swing中实现模型/视图/控制器模式(MVC)的方式。

视图可以从模型中读取值。视图不得更改模型中的值。

控制器将(可能)更改模型中的值。

控制器将(可能)导致视图重新绘制。

我通常没有一个主控制器。我让每个控制器做它的事情。

我通常有一个主模型。有时,您需要多个 GUI 模型。这不是那些时代之一。当您的 GUI 是更大的 Java 应用程序的一部分时,GUI 模型通常与应用程序模型是分开的。

关键在于缩写"MVC",意思是模型视图控制。符合 MVC 原则的应用程序将数据模型(业务数据)与控件(管理业务数据的逻辑)与视图(管理图形用户界面的代码 - 或简称 GUI)区分开来。

因此,GUI 模型是 UI 的模型,而应用程序模型是不特定于 MCV 模型的一部分的模型。理论上,它可以涵盖整个应用程序。也许值得一提的是,我使用"模型"一词与描述性表示同义,如在类模型或控制流程图中。但模型在其他情况下可能意味着更多。例如,组合的业务类集也可以称为业务模型,而应用程序中的组合类可以称为应用程序模型。

最新更新