В Objective-C, как предотвратить конфликт имен в методах категории? - PullRequest
3 голосов
/ 27 февраля 2012

Некоторые люди используют префиксы для именования методов своей категории, чтобы предотвратить возможные конфликты имен с другим внешним кодом, но я лично считаю, что добавление шума к имени является очевидным. Есть ли лучший способ избежать коллизий имен категорий, чем префикс?

, например

@interface UILabel (Extras)
-(void)prefix_extraMethod;
@end

Ответы [ 2 ]

16 голосов
/ 27 февраля 2012

В Objective-C не существует пространства имен, поэтому единственный способ - добавить префикс к вашему методу.

Если вы не хотите добавлять префикс (я согласен с вами .. это ужасно), вы можете OBJC_PRINT_REPLACED_METHODS изменить переменную окружения на YES, чтобы получить предупреждение, если имя вашего метода сталкивается с другим существующим методом.

set environment variable

6 голосов
/ 27 февраля 2012

Неа.Префиксы - способ сделать это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...