Соглашения об именах . Исправьте все проблемы статического анализатора и убедитесь, что ваше имя понятно и соответствует соглашениям - теперь это служит связью с компилятором. Теперь это действительно не нужно, но хорошо, чтобы удалить все предупреждения компилятора и проверки, проверить, убедиться, что вы довольны именованием, а затем преобразовать. Это также означает повышение уровня предупреждений и устранение проблем.
Избегайте атрибутов Подробности здесь: Глубокая копия словарей дает Ошибка анализа в Xcode 4.2
Примеры в «Избегать атрибутов» демонстрируют важность безопасности типов, описательных имен методов и обеспечения того, чтобы вы включали то, что вы используете в переводе, и использовали строгое соответствие селектора . опция: -Wstrict-selector-match
. Безопасность типов также возникает, когда вы выполняете небезопасные преобразования - скорее всего, вам нужно будет ввести безопасность типов через специальное приведение в некоторых частях вашей программы.
Висячие ссылки на неуправляемые типы . Видно здесь: Назначение существующего CGColor свойству CGColor работает в симуляторе iOS, а не на устройстве iOS. Почему?
[ARC] не предоставляет сборщик циклов; вместо этого пользователи должны явно управлять временем жизни.
Это относится к сильным циклическим ссылкам (например, объектам, зависящим от кода). Они будут существовать в вашей старой программе. Инструменты могут помочь вам обнаружить их.
После того как вы завершили конвертацию, будьте готовы протестировать несколько версий ОС.
Удачи!
Дополнительно:
Каковы преимущества и недостатки использования ARC?