Что означает back в контексте объявленных свойств Objective-C?

Читая некоторые руководства по Objective-C о свойствах и переменных экземпляра, я наткнулся на множество предложений вроде

свойство readwrite будет поддерживаться переменной экземпляра.

or

Свойства обычно поддерживаются переменной экземпляра с символом подчеркивания в начале, поэтому создание свойства с именем firstName будет иметь резервную переменную экземпляра с именем _firstName.

Что такое «поддерживающая» переменная? Почему в тексте используется слово «назад»? Что это значит?


person Tian Yong    schedule 29.12.2014    source источник
comment
Собственность — это ложный фасад. За ним стоит какая-то реальная переменная.   -  person Hot Licks    schedule 29.12.2014


Ответы (3)


В контексте реализации свойств классов Objective-C слово «назад» означает «предоставление хранилища для значения свойства».

В каком-то смысле слово «сзади» противоположно слову «спереди»: методы, реализующие геттеры и сеттеры свойства, обеспечивают «лицевую сторону», через которую пользователи класса взаимодействуют со свойством, в то время как переменная предоставляет «обратную сторону». " место для методов для хранения значения.

person Sergey Kalinichenko    schedule 29.12.2014

Свойство — это синтаксический сахар, обычно предоставляющий методы доступа (геттеры для чтения, сеттеры для записи), которые взаимодействуют с переменной экземпляра, которая синтезируется для вас. Таким образом, переменная экземпляра поддерживает ссылку на базовый объект, но методы доступа свойства гарантируют соблюдение всей соответствующей семантики памяти (среди прочего). Таким образом, переменная экземпляра считается «поддерживающей» свойство.

См. обсуждение объявленных свойств в разделе Apple. Документ Основные компетенции.

person Rob    schedule 29.12.2014

Проще говоря, «поддерживается» здесь означает «хранится в», говоря «бэк-энд».

So

свойство readwrite будет поддерживаться переменной экземпляра.

просто означает

свойство readwrite будет сохранено в переменной экземпляра.

person John Estropia    schedule 29.12.2014