Как пометить метод как устаревший в Objective-C 2.0?

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

Есть ли способ, которым я могу пометить определенные методы как устаревшие (например, @deprecated в Java и [Obsolete] в .NET).

Я вижу, что Apple использует Availability.h и имеет такие теги, как

__OSX_AVAILABLE_BUT_DEPRECATED(__MAC_NA,__MAC_NA,__IPHONE_2_0,__IPHONE_3_0);

... это единственный способ сделать это (+ это безопасно в App Store?) Или Есть ли альтернативы, которые будут отмечать предупреждение в Xcode?

139
задан mokagio 27 May 2016 в 06:06
поделиться