Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика XCode

Разработчик

Используя Swift с какао и Objective C

iBook
На этой странице

Основная установка

Swift разработан для обеспечения бесшовной совместимости Какао и Objective C. Можно использовать Objective C APIs (в пределах от системных платформ к собственному коду) в Swift, и можно использовать Swift APIS в Objective C. Эта совместимость делает Swift простым, удобным, и мощным инструментом для интеграции в поток операций разработки приложений Какао.

Это руководство покрывает три важных аспекта этой совместимости, которую можно использовать в ваших интересах при разработке приложений Какао:

  • Функциональная совместимость позволяет Вам взаимодействовать через интерфейс между Swift и кодом Objective C, позволяя Вам использовать классы Swift в Objective C и использовать в своих интересах знакомые классы Какао, образцы и методы при записи Кода SWIFT.

  • Смешивание и подгонка позволяет Вам создавать приложения на разных языках, содержащие и Swift и файлы Objective C, которые могут связаться друг с другом.

  • Миграция от существующего кода Objective C до Swift сделана простой с функциональной совместимостью и смешиванием и подгонкой, позволив заменить части Ваших приложений Objective C с последними функциями Swift.

Прежде чем Вы начнете узнавать об этих функциях, Вам нужно основное понимание того, как установить среду Swift, в которой можно получить доступ к системным платформам Какао.

Установка Swift среда

Чтобы начать экспериментировать с доступом к платформам Какао в Swift, создайте основанное на Swift приложение из одного из шаблонов XCode.

Создать проект Swift в XCode

  1. Выберите File> New> Project> (iOS или OS X)> Приложение> Ваш предпочтительный шаблон.

  2. Щелкните по всплывающему меню Языка и выберите Swift.

image: ../Art/newproject_2x.png

Структура проекта Swift почти идентична проекту Objective C с одним важным отличием: Swift не имеет никаких заголовочных файлов. Нет никакого явного формирования рисунка между реализацией и интерфейсом, таким образом, вся информация об определенном классе находится на сингле .swift файл.

Отсюда, можно начать экспериментировать путем записи Кода SWIFT в делегате приложения, или можно создать новый файл класса Swift путем выбора File> New> File> (iOS или OS X)> Источник> Swift.

Понимание процесса импорта Swift

После того, как у Вас будет свой установленный проект XCode, можно импортировать любую платформу из платформы Какао, чтобы начать работать с Objective C от Swift.

Любая платформа Objective C (или библиотека C) это доступно, поскольку модуль может быть импортирован непосредственно в Swift. Это включает все системные платформы Objective C — такие как Основа, UIKit и SpriteKit — а также общие библиотеки C, предоставленные системой. Например, для импорта Основы просто добавьте этого оператора импорта к вершине файла Swift, в котором Вы работаете:

Swift

  • import Foundation

Этот импорт делает всю Основу APIs — включая NSDate, NSURL, NSMutableData, и все их методы, свойства и категории — непосредственно доступный в Swift.

Процесс импорта является прямым. Платформы Objective C продают APIs в заголовочных файлах. В Swift те заголовочные файлы компилируются вниз в модули Objective C, тогда импортирующиеся в Swift как Swift APIS. Импорт определяет, как функции, классы, методы, и вводят объявленный в коде Objective C, появляются в Swift. Для функций и методов, этот процесс влияет на типы их параметров и возвращаемых значений. Для типов процесс импорта может сделать следующие вещи:

  • Повторно отобразите определенные типы Objective C на их эквиваленты в Swift, как id к AnyObject

  • Повторно отобразите определенные типы ядра Objective C на их альтернативы в Swift, как NSString к String

  • Повторно отобразите определенные понятия Objective C на принципы соответствия в Swift, как указатели на optionals

В Функциональной совместимости Вы узнаете больше об этих отображениях и о том, как эффективно использовать их в Вашем Коде SWIFT.

Модель для импорта Swift в Objective C подобна тому, используемому для импорта Objective C в Swift. Swift продает свой APIs — такой как от платформы — как модули Swift. Рядом с этими модули Swift являются сгенерированными заголовками Objective C. Эти заголовки продают APIs, который может быть отображен назад на Objective C. Некоторый Swift APIS не отображается назад на Objective C, потому что они эффективно используют функции языка, которые не доступны в Objective C. Для получения дополнительной информации об использовании Swift в Objective C посмотрите Swift и Objective C в Том же Проекте.