При внедрении метода + initialize или + load в одном из классов Objective-C, вы всегда должны начинать с такого вида охраны?:
@implementation MyClass
+ (void)initialize {
if (self == [MyClass class]) {
...
}
}
...
@end
Кажется, что код в + load и + initialize обычно только хочет выполнить один раз. Таким образом, это поможет избежать выполнения дублирования при загрузке/инициализации подклассов.
Я предполагаю, что мне просто нужно некоторое подкрепление от некоторых мастеров ObjC, что это необходимо/обычная практика...
Какая общая мудрость по этому поводу? вы бы порекомендовали всегда делать это?
Является ли ваш совет одинаковым для обоих + load и + initialize, или есть ли разница в том, как они должны обрабатываться?
спасибо.