我刚开始编写Objective-C,有Java背景,不知道人们写Objective-C程序是如何处理私有方法的。
我知道可能会有一些约定和习惯,把这个问题看作是人们在Objective-C中处理私有方法时使用的最佳技术的集合。
请包括一个论点,你的方法张贴时。为什么它是好的?你知道它有哪些缺点,你是如何处理它们的?
至于我目前的发现。
可以使用MyClass中定义的类别[例如MyClass (Private)]。M文件对私有方法进行分组。
这种方法有两个问题:
Xcode(和编译器?)不会检查你是否在相应的@implementation块中定义了私有类别中的所有方法 你必须把@interface放在MyClass的开头声明你的私有类别。m文件,否则Xcode抱怨一个消息像“self可能不响应消息“privateFoo”。
第一个问题可以用空类别来解决[例如MyClass()]。 第二个问题让我很困扰。我希望在文件末尾看到私有方法的实现(和定义);我不知道这是否可能。