Iphone 为什么XCode前缀控制器使用xxxViewController而不是xxxController?

Iphone 为什么XCode前缀控制器使用xxxViewController而不是xxxController?,iphone,ios,xcode,Iphone,Ios,Xcode,我不明白:在所有关于iOS的教程中,它显示了一个经典的三部分模型、视图、控制器,那么为什么XCode将控制器前缀为xxxViewController而不是xxxController 这使得我们相信控制器只用于视图,而不用于模型,因此比经典的MVC更接近MVVM 在给出的答案中,它说它不是MVC 但如果我看一下斯坦福德大学的课程,它清楚地将iOS开发描述为讲师1.pdf@ Xcode并不是对所有控制器都这样做,只是对视图控制器(UIViewController的子类)这样做。它使您更容易找到管理视

我不明白:在所有关于iOS的教程中,它显示了一个经典的三部分模型、视图、控制器,那么为什么XCode将控制器前缀为xxxViewController而不是xxxController

这使得我们相信控制器只用于视图,而不用于模型,因此比经典的MVC更接近MVVM

在给出的答案中,它说它不是MVC

但如果我看一下斯坦福德大学的课程,它清楚地将iOS开发描述为讲师1.pdf@


Xcode并不是对所有控制器都这样做,只是对视图控制器(UIViewController的子类)这样做。它使您更容易找到管理视图的控制器,您可以创建其他控制器并根据自己的喜好命名它们。

Xcode不适用于所有控制器,只适用于视图控制器(UIViewController的子类)。它可以更容易地找到管理视图的控制器,您可以创建其他控制器,并根据自己的喜好命名它们。

正如g_wolfman在以下文章中的评论:

尽管苹果在其开发者文档中使用了术语MVC, 他们实际上并不使用它;他们使用了 [表示抽象控制] (PAC)|http://en.wikipedia.org/wiki/Presentation-abstraction-control].

关键区别在于,在MVC中,视图直接获取信息 从模型和控制器只关心改变 模型因此,视图可能需要知道如何从 作为创建视图的一部分创建模型。在PAC中,视图和模型是 彼此完全隔离;所有的东西都要经过 控制器。这允许以如下方式写入视图: 避免需要任何“业务逻辑”

编辑--- 从苹果文件-

组合角色

例如,可以合并对象扮演的MVC角色,生成一个对象 例如,完成控制器和视图角色,在这种情况下 将被称为视图控制器。同样,你也可以 模型控制器对象。对于某些应用程序,组合角色,如 这是一个可接受的设计

正如g_wolfman在以下文章中的评论:

尽管苹果在其开发者文档中使用了术语MVC, 他们实际上并不使用它;他们使用了 [表示抽象控制] (PAC)|http://en.wikipedia.org/wiki/Presentation-abstraction-control].

关键区别在于,在MVC中,视图直接获取信息 从模型和控制器只关心改变 模型因此,视图可能需要知道如何从 作为创建视图的一部分创建模型。在PAC中,视图和模型是 彼此完全隔离;所有的东西都要经过 控制器。这允许以如下方式写入视图: 避免需要任何“业务逻辑”

编辑--- 从苹果文件-

组合角色

例如,可以合并对象扮演的MVC角色,生成一个对象 例如,完成控制器和视图角色,在这种情况下 将被称为视图控制器。同样,你也可以 模型控制器对象。对于某些应用程序,组合角色,如 这是一个可接受的设计


同样如上所述,我的Abizern.你想用什么名字取决于你…你可以不加前缀地命名任何控制器。但在斯坦福大学的课程中,他们明确表示这是MVC,请参阅我的更新。在下载之前参考苹果文档-在苹果文档中,这显然是MVC。和windows phone mvvm不同的是,这里有一个明确的控制器。同样,如果你从另一个人那里复制语言,你必须提供适当的引用,否则你只是在窃取别人的信用。我编辑了你的答案来做这件事,但是你以后需要自己做这件事。正如上面所说的,我的阿比泽恩。你想用什么名字取决于你……你可以给任何控制器命名,而不用在视图前面加前缀。但是在斯坦福德大学的课程中,他们清楚地说这是MVC。请看我的更新。在下载之前参考苹果文档-在苹果文档中,这显然是MVC。和windows phone mvvm不同的是,这里有一个明确的控制器。同样,如果你从另一个人那里复制语言,你必须提供适当的引用,否则你只是在窃取别人的信用。我已经编辑了你的答案,但你以后需要自己做。是的,但我的问题是:它也是关联模型的控制吗?考虑到控制器在模型和视图之间进行调解,如你问题中的图表所示-是。命名只是一种方便,如果你编写一个有很多视图的应用程序,你会看到它的好处。是的,但我的问题是:它也是关联模型的控制吗?考虑到控制器在模型和视图之间进行调解,如你问题中的图表所示-是的。命名只是一种方便,如果你编写一个有很多视图的应用程序,你会看到它的好处。