objective-c - 为了简单起见将 Controller 分成类别

标签 objective-c cocoa

我正在开发一个 NSWindowController,它很快就开始变大。然而,我正在开发的 Controller 的优点之一是它是相当分段的 - 它的各个部分可以在逻辑上分开。

我想将这个 Controller 分成几类,以便更容易找到东西。关于为此目的使用类别的普遍共识是什么?有吗? Apple 有实际使用类似模式的例子吗?

最佳答案

这是个人喜好。

作为一名老时代(1970 年代)程序员,我喜欢将任何文件保留在 1 页内 - 在 Objective C 中的实践中,我的上限是 300-400 行。

我对工程师编写充满意大利面条代码的整体 FORTRAN 程序有一段不幸的记忆。

限制文件大小或使用类别并没有内在的好处,但如果它能让代码更容易理解和维护,那就值得了。

我同意,如果使用类可行,则应考虑这一点。 您还应该考虑使用函数而不是方法是否可以简化代码 - 这些可以放入单独的文件中。

我在 NSWindowControllerNSViewContorller 中使用了类别,在一种情况下将 2000 行代码减少到 5 个类别。这应该不会对生成的代码产生影响,但肯定会使编码变得更容易。

您可以查看 Apple 示例(并且有一些类别示例),但在框架中无法判断底层代码是如何编写的。

我的建议是通过任何方便的方式限制文件大小。

关于objective-c - 为了简单起见将 Controller 分成类别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12910386/

相关文章:

php - Cocoa Mac App Webview session 丢失

objective-c - 配置 log4Cocoa

iOS - 逐帧更改图像

ios - 获取要删除的托管对象数组后,如何删除数组中的所有对象?

objective-c - 在 NSObject 中播放 NSSound(使用 Objective-C 的 Mac App)

cocoa - NSView、Cocoa App 中的透明 PNG

ios - 上传图片到服务器

ios - 如何在人脸的两个点集之间添加度量以将其用于数字图像中的对象检测以进行人脸识别

objective-c - 从 Xcode 6.4 中构建提交应用程序

iphone - 使用 CFReadStream 进行异步 IO