… что именно является заданием этого объекта, которое я указываю в «Привязать к:»?
Вы связываете свой взгляд с вашим контроллером. Контроллер владеет моделью; ключ контроллера, к которому вы привязываете, - это имя свойства, которое обслуживает некоторую часть этой модели. Объекты модели имеют свои собственные свойства, и вы можете (в некоторых случаях должны) указать путь к ключу модели вместе с ключом контроллера.
Я предполагаю, что Interface Builder автоматически создает некоторые методы, которые выполняют всю эту работу по синхронизации. Это верно?
Нет. IB никогда не создает методов. Система Bindings выполняет все эти функции синхронизации, и она уже существует. IB просто вызывает его (в частности, он вызывает метод bind::::
, о котором я упоминал в мой ответ на ваш другой вопрос ).
И что это значит, когда я "Привязка к: Владельцу файла"?
Владелец файла - это объект, которому принадлежат все объекты верхнего уровня в файле пера. Владельцем пера MainMenu является объект приложения (NSApp
). В основанном на документе приложении объект документа загрузит перо, содержащее окно документа; как таковой, он является владельцем окна вместе с любыми другими объектами верхнего уровня в этом наконечнике.
Это мой файл с методом main внутри?
Нет такого файла, потому что такого метода нет. Существует main
функция , но это функция, а не метод объекта. Там нет никакого объекта, поэтому вы не можете привязать к нему.
И вы не можете привязать файл, только объект. Исходные файлы исчезают *, когда вы связываете программу в один исполняемый файл. Исполняемый файл содержит только классы и функции, а перья содержат объекты (экземпляры классов).
Если вы спрашиваете, какому файлу принадлежит, это файл nib (или, точнее, его содержимое, но «владелец содержимого файла» немного длинен).
* Ну, за исключением символов отладки, которые идентифицируют имя файла и номер строки каждой инструкции.