Зачем использовать ivars для IBOutlets вместо свойств?

Я только начал работать над новым проектом. В нем много устаревшего кода, и я нашел следующий код

@interface WLLeftSideViewController : UIViewController {

@private
    __weak IBOutlet UIButton *_signInButton;
    __weak IBOutlet UIButton *_signOutButton;
    __weak IBOutlet UILabel *_nameLabel;
    __weak IBOutlet UILabel *_emailLabel;
    __weak IBOutlet WLLeftSideMenuView *_tableView;
    __weak IBOutlet UIButton *_settingsButton;

    __weak IBOutlet NSLayoutConstraint *_heightConstraint;
}

У меня есть пара сомнений:

  • В чем может быть преимущество использования частных иваров для IBOutlet?
  • Зачем добавлять __weak? Как я понимаю, в среде ARC ивары всегда слабы.

Спасибо

1 ответ

Ключевое слово здесь - наследие

  • Нет преимуществ
  • Все переменные (ивары и нет) по умолчанию являются сильными.
Другие вопросы по тегам