Cocoa中的常规良好实践表明每个NSView都应该拥有自己的NSViewController作为其所有者.这应该适用于基于视图的NSTableView的每一行,如果是这样,那么初始化和缓存这些NSViewControllers的好策略是什么? 最佳答案 在大多数情况下,这将是矫枉过正.不需要每个NSView都有一个控制器.那些与模型层无关的视图 – 在这种情况下,调解器/控制器是不必要的?在大型表中,这将导致可能不需要的控制器对象的激增.
我将仔细研究文档中提供的TableViewPlayground示例项目.请注意该项目中Apple如何使用构成行的各种视图.特别是,重点关注ATComplexTableViewController类及其关联的nib文件.这里,表视图的dataSource返回视图,其中dataSource本身充当视图和模型之间的中介.