Я реализую одноэлементный класс (и давайте не будем вступать в обсуждение, если это неправильно или нет).У меня есть метод для получения экземпляра этого класса, который лениво инициализируется:
+ (FFDataManager *)sharedDataManager {
static FFDataManager *dm = nil;
if (!dm) {
dm = [[FFDataManager alloc] init];
}
return dm;
}
Есть ли что-то, на что я должен обращать внимание при выполнении этого с использованием static
(внутри метода), а несоздание глобальной переменной?Что-нибудь может пойти не так, все учебники в Интернете используют глобальную переменную.