Уже известно, что Xcode 8.2 будет последним релизом, который поддерживает переходную версию Swift 2.3. Сейчас действует версией Swift 3.0 и Apple анонсировала обновление Swift до версии 3.1 весной 2017 г., которое усовершенствует синтаксис языка, улучшит работу Swift Package Manager и Swift на Linux, а также обновит компилятор и стандартные библиотеки. Эта версия будет source совместима с Swift 3.0. То есть поставлена очень четкая цель : огромное количество кода, написанного на Swift 3.0, будет восприниматься компилятором Swift 3.1 без изменения. Исключение составляют ошибки, которые будут отклонены компилятором, но в практике это будет встречаться очень редко.
Далее команда Swift сосредоточится на Swift 4, который обеспечит ABI стабильность для Swift.
Поэтому самое время подумать сейчас о миграции своих приложений на Swift 3.
Я хочу поделиться некоторым опытом такой миграции на примере приложений. связанных со стэнфордским курсом «Developing iOS 9 Apps with Swift«, как демонстрационных (их 12), так и полученных в результате выполнения Заданий этого обучающего курса (их 6 с вариантами). Они все разной сложности, но там есть и рисование в drawRect, и многопоточность, и показ изображений с помощью ScrollView, и работа с сервером Twitter, и база данных Core Data, и работа с облачным сервисом Cloud Kit, и карты Map Kit. И все это было написано на Swift 2.2 (stanford.edu) и требовалось перевести на Swift 3. Код демонстрационных примеров стэнфордских курсов для Swift 2.3 находится на Github, а для Swift 3 — на Github.
Читать далее →