Документация

Совместимость версий Swift

Эта книга описывает Swift 4.2, дефолтную версию, которая по умолчанию поддерживается Xcode 10.0. Вы можете использовать Xcode 10.0 для сборки таргетов, которые написаны как на Swift 4, так и на Swift 3.

Заметка

Когда компилятор Swift 4.2 работает с кодом на Swift 3, он определяет версию языка как Swift 3.4. В качестве результата вы можете использовать условные завершающие блоки, например, #if swift(>=3.4), чтобы написать код, который совместим с несколькими версиями компилятора Swift.

Когда вы используете Xcode 9.2 для сборки кода на Swift 3, большая часть функционала Swift 4 так же будет вам доступна. Тем не менее есть функционал, который доступен только на Swift 4:

  • Операции с подстроками возвращают экземпляр типа Substring вместо String.
  • Атрибут @objc явно добавляется в нескольких местах.
  • Расширения типа в том же файле получают доступ и к приватным членам тоже.

Таргет написанный на Swift 4 может зависеть от таргета, который написан на Swift 3 и наоборот. Если у вас есть большой проект, который разделен на несколько фреймворков, то вы можете осуществить миграцию своего кода со Swift 3 на Swift 4 по одному фреймворку за раз.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: