-1

现在我正在关注我的应用程序的结构。我想子类化 UIView 来制作一个“根视图”,它将作为应用程序主要流程的控制器执行。因此,UIView 的子类将具有例如由子视图调用的方法,这些方法执行显示的内容更改。你会说这是一种糟糕的编程结构(/风格)吗?如果是这样,为什么它不好或不优雅?谢谢你的帮助 :)

sh4kesbeer

4

3 回答 3

3

看起来像 UIViewController,闻起来像 UIViewController,尝起来像 UIViewController。那么为什么不使用 UIViewController 呢?

于 2012-10-23T15:33:53.580 回答
0

视图必须向用户展示一些东西;控制器必须实现应用程序逻辑。这意味着这是选择必须向用户显示哪个视图的控制器。

如果您想学习更多内容,请查看苹果文档维基百科所说的内容。

于 2012-10-23T15:37:45.750 回答
0

除了您没有使用为 UIViewController 设计的所有漂亮模式(如标准回调、navController 集成、tabBarController 支持等)之外,单独使用 UIView 或包装到 UIViewController 中没有逻辑上的区别。还会使您的代码清单更大且更难阅读/理解.

然而,这里的要点是,从 OOP 的角度来看,您也降低了影响消息传递的封装级别。现在遇到杀手:从某些角度来看,您正在制造几乎看不见的东西CMVC

根据我的经验,基于视图的项目一开始就很好,然后各种困难都逼近你,迫使你考虑重构,这让你从头开始发明视图控制器。

于 2012-10-23T15:54:52.430 回答