Компания Apple объявила о публикации предварительного варианта инструментария Swift SDK для платформы Android. SDK подготовлен рабочей группой, созданной и июне для продвижения Swift в качестве языка для разработки мобильных приложений для Android. Сборки Swift SDK для разработки Android-приложений подготовлены для macOS, Linux и Windows.
Для разработчиков опубликована базовая инструкция по началу разработки кроссплатформенных мобильных приложений на языке Swift, способных работать на платформе Android, и несколько готовых примеров подобных приложений. Также предложены инструкции по портированию для Android ранее созданных для Swift пакетов. В текущем видео 27.9% пакетов (~9000), размещённых в каталоге Swift Package Index, уже успешно могут быть собраны для Android. Для обеспечения переносимости между языками Java и Swift предложен пакет swift-java, включающий генератор обвязок и библиотеку для обращения из Swift-кода к компонентам на языке Java и наоборот.
Язык Swift сочетает лучшие элементы языков C и Objective-C, и предоставляет объектную модель, совместимую с Objective-C (Swift-код может смешиваться с кодом на С и Objective-C), но отличается использованием средств автоматического распределения памяти, контроля переполнения переменных и массивов, защитой от использования неинициализированных переменных и блокированием доступа к памяти после её освобождения, что значительно увеличивает надёжность и безопасность кода. Swift также предлагает множество современных методов программирования, таких как замыкания, обобщённое программирование, лямбда-выражения, кортежи и словарные типы, быстрые операции над коллекциями, элементы функционального программирования.
Pеализация Swift построена с задействованием технологий проекта LLVM. Для обеспечения высокой производительности Swift-программы компилируются в машинный код, который в проведённых тестах демонстрирует производительность на 30% опережающую код на Objective-C. Вместо сборщика мусора в Swift используются средства подсчёта ссылок на объекты. В поставку входит пакетный менеджер Swift Package Manager, предоставляющий инструменты для распространения модулей и пакетов с библиотеками и приложениями на языке Swift, управления зависимостями, автоматизированной загрузки, сборки и связывания компонентов.
Компилятор и инструментарий для языка Swift распространяется под лицензией Apache 2.0.