再次,与MVC相关的问题.几天前,我开始阅读Apple的Cocoa Fundamentals Guide,其中Apple解释了他们对MVC的实现.
在作为复合设计模式(链接)的MVC一章中,他们比较了两个MVC版本:
旧的/传统的SmallTalk版本:

Apple目前定义的版本:

他们将此当前模型描述如下:
此复合设计模式中的控制器对象包含Mediator模式以及策略模式; 它在两个方向上调节模型和视图对象之间的数据流.模型状态的变化通过 应用程序的控制器对象传递给视图对象.
传统模式看起来像MVC,没有错.但他们目前的模式名称让我感到困惑.据我所知,这可以看作是普通的MVP,因为Controller似乎总是在View和Model之间进行调解.
我完全错了,我是否误解了MVC或MVP?或者Apple只是使用了错误的名称?更重要的是,为什么这种模式称为MVC?