
Язык программирования Apple Swift увидел свою первую предварительную ветку выпуска для 3.0 вчера, поскольку язык программирования приближается к финальному выпуску 3.0, который ожидается позже в этом году. Хотя до финального выпуска Swift 3.0 еще далеко, это знаменует начало основных пересмотров Swift, которые разработчики увидят позже в этом году.
Согласно странице Swift-Evolution GitHub, основная цель Swift 3.0 — «укрепить и развить язык Swift и опыт разработки». Как оказалось, это также означает, что на этот раз будут внесены изменения, нарушающие совместимость исходного кода, но, как ожидается, Swift 3.x и 4+ останутся максимально совместимыми с исходным кодом.
Разработчики, желающие протестировать предварительную ветку выпуска Swift 3.0, могут перейти в раздел загрузки снимков Swift, чтобы получить недавний снимок, который затем можно будет использовать в Ubuntu 14.04, 15.10 или непосредственно в Xcode от Apple. Учитывая, что WWDC 2016 пройдет в ближайшие недели, было бы не слишком натянуто полагать, что более поздние бета-версии Xcode могут уже включать в себя последние предварительные версии Swift 3.0.
Ниже приведен список внедренных в настоящее время предложений для Swift 3.0:
- SE-0002: Удаление синтаксиса объявления
func- SE-0003: Удаление
varиз параметров функции- SE-0004: Удаление операторов
++и--- SE-0005: Лучший перевод API Objective-C на Swift
- SE-0006: Применение рекомендаций по API к стандартной библиотеке
- SE-0007: Удаление циклов for в стиле C с условиями и инкрементами
- SE-0008: Добавление ленивого flatMap для последовательностей опционалов
- SE-0016: Добавление инициализаторов для Int и UInt для преобразования из UnsafePointer и UnsafeMutablePointer
- SE-0017: Изменение
Unmanagedдля использованияUnsafePointer- SE-0019: Тестирование Swift
- SE-0023: Рекомендации по дизайну API
- SE-0028: Модернизация идентификаторов отладки Swift (__FILE__, и т.д.)
- SE-0029: Удаление неявного поведения кортежного расщепления из применений функций
- SE-0031: Корректировка объявлений inout для декорации типов
- SE-0032: Добавление метода
first(where:)кSequenceType- SE-0033: Импорт констант Objective-C как типов Swift
- SE-0034: Различение управляющих операторов строк от идентификаторов отладки
- SE-0037: Уточнение взаимодействия между комментариями и операторами
- SE-0039: Модернизация литералов Playground
- SE-0040: Замена знаков равенства двоеточиями для аргументов атрибутов
- SE-0043: Объявление переменных в метках ‘case’ с несколькими шаблонами
- SE-0044: Импорт как член
- SE-0046: Установление единообразного поведения меток для всех параметров, включая первую метку
- SE-0049: Перемещение @noescape и @autoclosure в атрибуты типа
- SE-0053: Удаление явного использования
letиз параметров функции- SE-0054: Отмена типа
ImplicitlyUnwrappedOptional- SE-0055: Явное указание nullability небезопасных указателей с помощью Optional
- SE-0057: Импорт легковесных дженериков Objective-C
- SE-0059: Обновление рекомендаций по именованию API и соответствующее переписывание API Set
- SE-0061: Добавление обобщенных результатов и обработки ошибок в autoreleasepool()
- SE-0062: Ссылки на ключевые пути Objective-C
- SE-0064: Ссылки на селекторы Objective-C для геттеров и сеттеров свойств
- SE-0065: Новая модель для коллекций и индексов
- SE-0069: Изменяемость и типы значений Foundation
- SE-0070: Сделать опциональные требования только для Objective-C
- SE-0071: Разрешить (большинству) ключевых слов в ссылках на члены
- SE-0072: Полное устранение неявных преобразований моста из Swift
- SE-0085: Имена команд менеджера пакетов
- SE-0094: Добавление sequence(first:next:) и sequence(state:next:) в стандартную библиотеку
Обновление 01.06.2016, 17:16 PDT: Похоже, в том, что изначально было названо первым предварительным выпуском Swift 3.0, была допущена ошибка. На официальной странице Swift Snapshots, где вчера был указан Swift 3.0 Preview 1, загрузка снимка теперь просто переименована в Trunk Development (master). Мы будем внимательно следить за любыми обновлениями, но, по мнению автора, мы можем увидеть первый официальный выпуск предварительных версий Swift 3.0 с предстоящими бета-версиями Xcode около WWDC.