Русский
Русский
English
Статистика
Реклама

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, управления зависимостями, автоматизированной загрузки, сборки и связывания компонентов.

Источник: habr.com
К списку статей
Опубликовано: 27.09.2020 02:04:55
0

Сейчас читают

Комментариев (0)
Имя
Электронная почта

Блог компании selectel

Swift

Софт

It-компании

Apple

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru