如果我使用分类来分解我的Objective-C类的实现成多个
@implementation块,那么结果应用程序的二进制会变大或影响性能吗?
显然,您无法在运行时获取类别的详细信息?。 因此,在其他条件相同的情况下,没有类别的情况下,应用程序的结果二进制文件是否相同?
背景
我有一个自定义的UIViewController
子类,它变得相当复杂。
iOS Developer Library:Programming with Objective-C:Categories
除了向现有类添加方法之外,您还可以使用类别将复杂类的实现分割成多个源代码文件。 例如,如果几何计算、颜色和渐变等比较复杂,则可以将自定义用户界面元素的绘图代码放在与其他实现不同的文件中。
与#pragma mark
相比,类别的另一个好处是Xcode可以折叠整个@implementation
块(但不能折叠两个#pragma mark
之间的代码)。如果您想将类别(可选折叠)保留在同一文件中作为主类,则此功能非常有用。