Ios 子类化UIViewController,何时和何时

Ios 子类化UIViewController,何时和何时,ios,objective-c,iphone,cocoa-touch,uiviewcontroller,Ios,Objective C,Iphone,Cocoa Touch,Uiviewcontroller,我在一个假设的情况下,我需要列出一所学校的学生名单。我有一个表视图控制器,它有几个部分,代表一个学校。每所学校都有后续的学生。现在,我需要让用户能够通过单击导航控制器顶层视图中的学校名称来查看特定学校的所有学生 这里的问题是,我是否要扩展我当前的“StudentsViewController”并添加复杂的逻辑以允许它显示单个学校的学生,或者您的专家会推荐一个新类来处理该表 权衡是相当直截了当的,因为我确实可以以一些混乱/复杂的逻辑为代价将所有内容放在一个视图控制器中。另一方面,如果我编写另一个控

我在一个假设的情况下,我需要列出一所学校的学生名单。我有一个表视图控制器,它有几个部分,代表一个学校。每所学校都有后续的学生。现在,我需要让用户能够通过单击导航控制器顶层视图中的学校名称来查看特定学校的所有学生

这里的问题是,我是否要扩展我当前的“StudentsViewController”并添加复杂的逻辑以允许它显示单个学校的学生,或者您的专家会推荐一个新类来处理该表

权衡是相当直截了当的,因为我确实可以以一些混乱/复杂的逻辑为代价将所有内容放在一个视图控制器中。另一方面,如果我编写另一个控制器来处理单个学校的学生,就会有大量重复代码


专家们对此有何建议?

我认为这取决于您用来保存数据的模型。 假设你有一个数组, (一组学校,每所学校容纳一组学生。)

在这种情况下,我将坚持使用一个tableController

如果您的模型设计很简单,那么逻辑就不必太复杂,而且我认为在这种情况下,它比多个子类更干净、更“正确”。 不要忘记系统向您传递nsindepath的任何地方,因为您有节号和行号。(学校学生
indexPath.sectionindexPath.row

我认为最简单的方法是让一个班级管理一系列学校。如果该数组仅包含一项,则可以(可选)不显示单个节的标题。否则,所有部分都有标题

将所有学校放入一个数组中,当需要显示单个学校时,将其自身粘贴到一个数组中,并将其推入视图控制器

我们在我们的一个应用程序中做了一件非常相似的事情,基本上是以相同的方式