Соглашение с категориями заключается в том, чтобы включать префикс при расширении классов Apple. Например:
[string XXDataUsingUTF8];
(Да, это глупый пример. Просто продолжайте.)
Что мне менее понятно, так это соглашение, когда идентификатор начинается с copy
, set
, init
или new
.
Например:
[request setHTTPBodyWithKeyValues: keyValues];
Если я добавлю свой префикс, это больше не будет следовать соглашению «сеттеры начинаются с набора».
[request XXSetHTTPBodyWithKeyValues: keyValues];
С другой стороны, если я добавляю префикс после набора, это уже не префикс:
[request setXXHTTPBodyWithKeyValues: keyValues];
Это не так уж важно с set
, но я думаю, что это становится более важным с init
, copy
и т. д.
Задокументировала ли Apple это где-нибудь? Что обычно используется?