У меня есть свойство, которое мне не всегда нужно, поэтому я не хочу, чтобы его экземпляр на представлении загружал или метод init (я думаю). Я полагаю, что я мог бы взять ленивое инстанцирование подход и сделать инициализацию в поглотителе для свойства ...Устанавливает ли свойство в пользовательском getter хорошую или плохую идею?
-(PropertyType *)myProperty {
if (!_myProperty)
self.myProperty = [[PropertyType alloc] init];
return _myProperty;
}
Я просто чувствую, что это немного Hacky. Но этого может и не быть. Есть идеи??
-Спасибо!
Это, безусловно, поможет вам http://stackoverflow.com/questions/19276229/overriding-property-getters-with-lazy-loading-in-objective-c –
Спасибо @anishparajuli, но это вопрос больше об использовании этот метод с инкапсуляцией, а не преимуществами/недостатками использования этой техники в целом. – jgvb