Я только начал программировать Objective-C и, имея опыт работы с Java, удивляюсь, как люди, пишущие программы на Objective-C, имеют дело с приватными методами.
Я понимаю, что может быть несколько соглашений и привычек, и думаю, что этот вопрос объединяет лучшие методы, которые люди используют для работы с частными методами в Objective-C.
Пожалуйста, укажите аргумент в пользу вашего подхода при публикации. Почему это хорошо? Какие у него недостатки (о которых вы знаете) и как с ними справляться?
Что касается моих выводов до сих пор.
Для группировки частных методов можно использовать категории [например, MyClass (Private)], определенные в файле MyClass.m.
Этот подход имеет 2 проблемы:
- Xcode (и компилятор?) Не проверяет, определяете ли вы все методы в частной категории в соответствующем блоке @implementation
- Вы должны поместить @interface, объявляющий вашу личную категорию, в начале файла MyClass.m, в противном случае XCode жалуется сообщением типа «self может не отвечать на сообщение« privateFoo ».
Первая проблема может быть решена с пустой категорией [например, MyClass ()].
Второй очень беспокоит меня. Я хотел бы видеть частные методы, реализованные (и определенные) в конце файла; Я не знаю, возможно ли это.