现在我正在关注我的应用程序的结构。我想子类化 UIView 来制作一个“根视图”,它将作为应用程序主要流程的控制器执行。因此,UIView 的子类将具有例如由子视图调用的方法,这些方法执行显示的内容更改。你会说这是一种糟糕的编程结构(/风格)吗?如果是这样,为什么它不好或不优雅?谢谢你的帮助 :)
sh4kesbeer
现在我正在关注我的应用程序的结构。我想子类化 UIView 来制作一个“根视图”,它将作为应用程序主要流程的控制器执行。因此,UIView 的子类将具有例如由子视图调用的方法,这些方法执行显示的内容更改。你会说这是一种糟糕的编程结构(/风格)吗?如果是这样,为什么它不好或不优雅?谢谢你的帮助 :)
sh4kesbeer
看起来像 UIViewController,闻起来像 UIViewController,尝起来像 UIViewController。那么为什么不使用 UIViewController 呢?
除了您没有使用为 UIViewController 设计的所有漂亮模式(如标准回调、navController 集成、tabBarController 支持等)之外,单独使用 UIView 或包装到 UIViewController 中没有逻辑上的区别。还会使您的代码清单更大且更难阅读/理解.
然而,这里的要点是,从 OOP 的角度来看,您也降低了影响消息传递的封装级别。现在遇到杀手:从某些角度来看,您正在制造几乎看不见的东西C
。MVC
根据我的经验,基于视图的项目一开始就很好,然后各种困难都逼近你,迫使你考虑重构,这让你从头开始发明视图控制器。