Apple открыла исходные тексты Swift System и выложила Swift 5.3

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.


Компания Apple открыла исходные тексты библиотеки Swift System. Она предоставляет идиоматический набор программных интерфейсов к системным вызовам и низкоуровневым типам данных. Изначально Swift System поддерживал только системные вызовы платформ Apple, но сейчас портирован и для Linux. Swift System написан на языке Swift, компания распространяет его под лицензией Apache 2.0.

Swift System удобна тем, что предоставляет единую точку доступа ко всем системным интерфейсам. Эту возможность можно использовать на всех поддерживаемых платформах, без специфических обвязок на C в Swift-программах. Положительный момент в том, что Swift System не унифицирует системные вызовы, а предоставляет отдельное подмножество API для каждой поддерживаемой платформы, с учетом ее поведения и точным отражением низкоуровневых интерфейсов ОС.

Ранее компания заявила, что ключевая цель создания Swift System — упрощение разработки кросс-платформенных библиотек и приложений, включая SwiftNIO и SwiftPM. Swift System не отменяет при этом необходимость ветвления на основе "#if os()" при обращении к низкоуровневым примитивам, зато упрощает эту работу и делает ее более безопасной.

Еще одна новость — выход Swift 5.3. Официальные сборки готовы для таких ОС, как Linux (Ubuntu 16.04/18.04/20.04, СentOS 7/8), macOS (Xcode 12) и Windows 10. Исходные тексты распространяются под лицензией Apache 2.0.

В новом выпуске добавлена начальная поддержка платформы Windows, плюс поставка инструментария для сборки и запуска Swift-приложений в Windows 10. Разработчики продолжают совершенствовать функциональность языка. В числе прочих новинок стоит отметить появление инициализатора для типа String, расширение применение выражения «where», изменение семантики didSet, поддержки указания нескольких шаблонов в выражениях Catch, добавление типа Float16, атомарные операции с памятью.

Важный момент — снижение размера результирующих приложений. Так, если в Swift 4 размер уже готовой программы превышал аналог на Objective-C в 2,3 раза, то сейчас этот разрыв сокращен до 1,5 раза. В новом выпуске еще и ускорена инкрементальная сборка и сборка кода с большим числом свойств и функций, которые импортируются из других библиотек. Расширены свойства диагностики в компиляторе и качество выводимых сообщений об ошибках. В пакетном менеджере еще и реализована возможность включения в пакеты дополнительных ресурсов, которые необходимы во время исполнения. Например, изображения. В пакетном менеджере появилась поддержка компонентов для локализации с возможностью определения условных зависимостей.

Swift — современный язык с большим количеством современных методов программирования, включая замыкания, обобщенное программирование, лямбда-выражения, кортежи и словарные типы, быстрые операции над коллекциями, элементы функционального программирования.

Реализация Swift предусматривает задействование технологий свободного проекта LLVM. Для обеспечения высокой производительности Swift-приложения компилируются в машинный код, который выполняется в тестах Apple на 30% быстрее кода на Objective-C. Так, вместо сборщика мусора в Swift используются средства подсчета ссылок на объекты.

В поставку входит пакетный менеджер Swift Package Manager, который предоставляет средства для распространения модулей и пакетов с библиотеками и приложениями на языке Swift, управления зависимостями, автоматизированной загрузки, сборки и связывания компонентов.

Источник: https://habr.com/ru/company/selectel/blog/520804/


Интересные статьи

Интересные статьи

Я очень впечатлён результатами тестов Apple M1. Это действительно быстрый и мощный чип в важных повседневных задачах, таких как просмотр веб-страниц, работа с приложениями x86 и инстр...
Один из ключевых сценариев работы в CRM это общение с клиентом в удобном для него канале. По почте, по телефону, по SMS или в мессенджере. Особенно выделяется WhatsApp — интеграцию с ...
Идея На WWDC 2019 была представлена SwiftUI — технология коренным образом влияющая на создание UI в приложениях для экосистемы Apple. Нам в Distillery стало интересно в ней разобраться чуть глуб...
Несколько часов назад Apple (довольно неожиданно) представила iPad Air и новый iPad mini. Они появились в продаже у неё в магазине. На этот раз компания не стала устраивать большую презентаци...
Реализация ORM в ядре D7 — очередная интересная, перспективная, но как обычно плохо документированная разработка от 1с-Битрикс :) Призвана она абстрагировать разработчика от механики работы с табл...