Видеокурсы по изучению языка программирования Swift. Подробнее

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

Если вы нашли опечатку в тексте, выделите ее и нажмите CTRL + ENTER.

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

Заметка

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

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

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

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

Swift: 
4.0