Objective-C: Свойство / переменная экземпляра в категории

Поскольку я не могу создать синтезированное свойство в категории в Objective-C, я не знаю, как оптимизировать следующий код:

@interface MyClass (Variant)
@property (nonatomic, strong) NSString *test;
@end

@implementation MyClass (Variant)

@dynamic test;

- (NSString *)test {
    NSString *res;
    //do a lot of stuff
    return res;
}

@end

Метод test-method вызывается несколько раз во время выполнения, и я делаю много вещей для вычисления результата. Обычно, используя синтезированное свойство, я сохраняю значение в IVar _test при первом вызове метода и просто возвращаю этот IVar в следующий раз. Как я могу оптимизировать приведенный выше код?

118
задан hfossli 16 January 2014 в 08:26
поделиться