Новые функции в Xcode 4.2
Xcode 4.2 добавляет опции для поддержки iOS 5, а также других улучшений к приложению.
Автоматический подсчет ссылок
Xcode 4.2 включает пункт меню для преобразования целей для использования Automatic Reference Counting (ARC), автоматизирующего управление памятью для объектов Objective C. ARC делает управление памятью намного проще, значительно сокращая шанс, что Ваша программа будет иметь утечки памяти. Во-первых, XCode рассматривает Ваш проект определить, существуют ли элементы, которые не могут быть преобразованы (и что необходимо поэтому измениться вручную). Затем XCode переписывает Ваш исходный код для использования ARC.
Для инициирования процесса включите, Продолжают создавать после ошибок в области General Preferences, затем выбирают Edit> Refactor> Convert to Objective-C ARC. Цели, которые Вы преобразовываете, обновляются для создания использования Apple компилятор LLVM. XCode пытается создать Вашу цель и определить то, какие изменения должны быть внесены для использования ARC. Если это находит какие-либо проблемы, предотвращающие преобразование, XCode выводит на экран диалоговое окно, направляющее Вас для рассмотрения ошибок в навигаторе Проблемы. После того, как Вы исправляете ошибки, выбираете пункт меню Convert to Objective-C Automatic Reference Counting снова для перезапуска потока операций преобразования ARC.
Когда XCode успешно создает Ваше приложение, он берет снимок текущего кода так, чтобы можно было вернуться позже, если Вы хотите. Тогда XCode выводит на экран диалоговое окно предварительного просмотра показ изменений, которые это собирается внести. При принятии изменений XCode преобразовывает код для использования ARC.
Для получения дополнительной информации о ARC посмотрите Переход к Информации о версии ARC.
Компилятор по умолчанию
Компилятор по умолчанию для разработки iOS в Xcode 4.2 является LLVM 3.0. По сравнению с компилятором GCC, который был значением по умолчанию в Xcode 4.0 и компилятором LLVM-GCC в Xcode 4.1, LLVM обеспечивает лучшую генерацию кода и оптимизацию, чем GCC, вместе с более новой поддержкой языка, чем LLVM-GCC, включая поддержку ARC в Objective C и нового стандарта C++, C++ 0x.
Раскадровки
В Xcode 4.2 Интерфейсном пользовательском интерфейсе Разработчика для приложения для iOS проект UI основывается на раскадровках использования, т.е. изображениях контроллеров представления, заполненных с объектами пользовательского интерфейса и соединенных вместе с переходами. Раскадровки позволяют Вам использовать Интерфейсного Разработчика для указания всех экранов в приложении, включая переходы между ними, и средства управления раньше инициировали переходы. С раскадровками можно разметить каждый возможный путь через приложение графически, значительно сократив объем кода, который необходимо записать для сложного многоэкранного приложения.
Для создания проекта, использующего контроллеры представления выберите File> New> New Project и установите флажок Use Storyboard в диалоговом окне опций.
Вы запускаете с целью объект контроллера, представляющий Вашу первую сцену (начальный контроллер представления). Для получения контроллеров представления для раскадровки выберите Objects и Controllers от Библиотеки объектов и перетащите контроллеры представления, которые Вы хотите на холст. Каждый контроллер представления управляет единственной сценой. На iPhone каждая сцена представляет содержание единственного экрана. Для приложений для iPad экран может быть составлен из содержания больше чем одной сцены.
К раскадровке Ваше приложение Вы соединяете каждый объект, это находится в контроллере представления, и это может вызвать изменение в дисплее к другому контроллеру представления, конфигурирующему и реализующему новую сцену. Как Вы видите на иллюстрации ниже, начальный контроллер представления имеет зеленую схему. Вы соединяете различные контроллеры представления в Интерфейсном Разработчике Перетаскиванием управления между средствами управления и просматриваете контроллеры. Можно перетащить от любого управления, имеющего вывод к заголовку любого другого контроллера представления. Можно добавить средства управления и представления к каждому представлению контроллера представления, как Вы добавили бы объекты к окну или представлению в файле пера Xcode 3 или приложения Xcode 4.0.
Стрелки между контроллерами представления представляют переходы от одной сцены до другого. Чтобы сконфигурировать переход — например, указать вид перехода для использования между сценами — щелкают по стрелке и открывают инспектора Атрибутов. Для определения пользовательского перехода выберите Custom для стиля перехода и заливки от имени пользовательского класса перехода. Стандартные классы перехода находятся в UIKit (см. Ссылку Платформы UIKit). Для получения информации о реализации методов в UIViewController
класс, посмотрите Ссылку класса UIViewController.
Результатом является раскадровка, графически представляющая каждый экран Вашего приложения и поток управления среди экранов. Дважды щелкните по холсту для уменьшения масштаб для наблюдения всей раскадровки.
OpenGL получение кадра ES
Опыт отладки был обновлен для включения нового потока операций для отладки iOS OpenGL приложения ES. Когда получение кадра включено в схеме приложения, панель отладки обеспечивает новое управление для ввода OpenGL представление отладки кадра ES.
Для активации этой опции необходимо запустить приложение на устройстве, и устройство должно выполнять iOS 5.0 или позже. Установите место назначения в меню схемы к устройству на iOS и выберите Edit Scheme из селектора схемы на панели инструментов. Выберите действие Выполнения, щелкните по вкладке Options и установите флажок OpenGL ES Enable Frame Capture.
Когда Вы создаете и выполняете свой OpenGL приложение ES, панель отладки включает кнопку захвата кадра. Нажмите ту кнопку для получения кадра.
Можно использовать Xcode 4.2 для:
Проверьте OpenGL информация о состоянии ES.
Анализируйте OpenGL объекты ES, такие как текстуры представления и программы построения теней.
Шаг через вызовы получения и часы изменения с каждым вызовом.
Шаг через вызовы состояния, предшествующие каждому, рисует вызов для наблюдения точно, как создается изображение.
У навигатора отладки есть список каждого вызова получения и вызова состояния, связанного с тем кадром. Буферы, связанные с кадром, показаны в области редактора, и информация состояния показана в области отладки.
Можно продвинуться через вызовы получения в навигатора отладки, или при помощи двойных стрелок и ползунка в панели отладки.
При использовании стрелок вызова получения или ползунка у Вас может быть выбор XCode ступенчатое - для рисования вызова в навигаторе отладки. Для этого Щелчок управления ниже полученного кадра и выбирает Reveal in Debug Navigator из контекстного меню.
Можно также использовать контекстное меню для переключения между стандартным представлением получения и каркасным представлением. Каркасное представление выделяет элемент, нарисованный выбранным вызовом получения.
Откройте Заместителя редактора для наблюдения объектов, связанных с полученным кадром. В Заместителе редактора можно принять решение видеть все объекты, только связанные объекты или штабель. Откройте вторую область Заместителя редактора для наблюдения и объектов и штабеля для кадра одновременно.
Дважды щелкните по объекту в Заместителе редактора видеть подробные данные о том объекте. Например, если Вы дважды щелкаете по объекту текстуры, Вы видите текстуру подробно.
Моделирование расположения
В Xcode 4.0 и 4.1, Вы могли моделировать только текущее расположение в своем приложении. С Xcode 4.2 можно моделировать расположения кроме текущего расположения в приложениях для iOS то Расположение Ядра использования. Для установки расположения выберите Edit Scheme из селектора схемы на панели инструментов, выберите действие Выполнения и щелкните по вкладке Options. Можно тогда выбрать расположение из меню Location.
Кроме того, если Вы запускаете приложение для iOS 5.0 или позже который использует Базовое Расположение, панель отладки имеет то же раскрывающее меню расположения.
Загрузка компонентов
Для улучшения времени загрузки и эффективности установки с Xcode 4.2 стандартный установщик XCode исключает некоторые большие компоненты инструмента, такие как более старые средства моделирования, которые не важны для текущего комплекта инструментальных средств разработки. Когда средство моделирования должно быть загружено, XCode дарит Вам диалоговое окно. Предпочтения документации были следовательно заменены предпочтениями Загрузок, и включая документацию и включая компоненты (средства моделирования и SDKs). Используя вкладку Components предпочтительной области Загрузок, можно просмотреть описание каждого доступного компонента, загрузки и установить его.