iPhone GLPaint样本有架构设计缺陷吗?

时间:2009-11-01 08:31:04

标签: iphone model-view-controller architecture

我是iphone dev的新手,但我熟悉MVC模式。任何人都可以解释为什么GLPaint样本类PaintingView.m(视图)实际上从磁盘获取所需的数据来写“摇我!”文本?数据是模型,应由控制器从磁盘读取并传递给视图以呈现IMO。正确的吗?

此外,Controller正在为视图添加UI控件(调色板分段控件) - 视图是否应该绘制这些东西?

这是Apple提供的一个不好的例子吗?

感谢。

2 个答案:

答案 0 :(得分:2)

这是如何使用OpenGL的一个很好的例子,但它是MVC的一个不好的例子。我想,因为MVC不是这个例子的焦点,所以它并没有真正用它来写。

在一天结束时,如果该示例有效并向您展示如何使用它作为示例,那么它就完成了它的工作。

我确信Apple还有其他一些MVC正确完成的例子。

答案 1 :(得分:0)

谢谢,我认为这有点像黑客,但是:

http://developer.apple.com/iphone/library/documentation/Cocoa/Conceptual/CocoaFundamentals/CocoaDesignPatterns/CocoaDesignPatterns.html#//apple_ref/doc/uid/TP40002974-CH6-SW8

组合角色 可以合并对象播放的MVC角色,例如,使对象同时满足控制器和视图角色 - 在这种情况下,它将被称为视图控制器。同样,您也可以拥有模型控制器对象。对于某些应用程序,组合这样的角色是可接受的设计。