„Apple“ išleido „Swift 5.3“ programavimo kalbą ir atvirojo kodo „Swift System“ biblioteką

Apple paskelbė об открытии исходных текстов библиотеки Swift System, предоставляющей идеоматический набор программных интерфейсов к системным вызовам и низкоуровневым типам данных. Изначально Swift System поддерживал только системные вызовы платформ Apple, но теперь портирован и для Linux. Код Swift System написан на языке Swift и išplatino licencijuota pagal Apache 2.0.

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

Taip pat galite pažymėti leidinys релиза языка программирования Swift 5.3. Oficialios konstrukcijos paruoštas для Linux (Ubuntu 16.04/18.04/20.04, СentOS 7/8), macOS (Xcode 12) и Windows 10. Исходные тексты skleisti licencijuota pagal Apache 2.0.

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

Снижен размер результирующих приложений — если в Swift 4 размер собранной программы превышал вариант на Objective-C в 2.3 раза, то теперь разрыв сокращён до 1.5 раза. В новом выпуске также заметно ускорена инкрементальная сборка и сборка кода с большим числом свойств и функций, импортируемых из других библиотек. Расширены средства диагностики в компиляторе и качество выводимых сообщений об ошибках. В пакетном менеджере реализована возможность включения в пакеты дополнительных ресурсов, необходимых во время исполнения, таких как изображения. В пакетный менеджер также добавлена поддержка компонентов для локализации и возможность определения условных зависимостей.

Prisiminkite, kad „Swift“ kalba paveldi geriausius C ir „Objective-C“ kalbų elementus ir pateikia objekto modelį, suderinamą su „Objective-C“ („Swift“ kodą galima maišyti su C ir „Objective-C“ kodu), tačiau skiriasi automatinio atminties paskirstymas ir kintamųjų bei masyvų valdymo perpildymas, o tai žymiai padidina kodo patikimumą ir saugumą. „Swift“ taip pat siūlo daugybę šiuolaikinių programavimo metodų, tokių kaip uždarymai, bendrasis programavimas, lambda išraiškos, kortelių ir žodynų tipai, greitos rinkimo operacijos ir funkcinio programavimo elementai. „Linux“ versija nėra susieta su „Objective-C Runtime“, kuri leidžia kalbą naudoti aplinkoje, kurioje nėra „Objective-C“ palaikymo.

„Swift“ diegimas sukurtas naudojant nemokamo LLVM projekto technologijas. Siekiant užtikrinti aukštą našumą, „Swift“ programos sukompiliuojamos į savąjį kodą, kuris veikia 30 % greičiau nei „Objective-C“ kodas atliekant „Apple“ testus. Vietoj šiukšlių rinktuvo „Swift“ naudoja objektų nuorodų skaičiavimą. Į paketą įeina paketų tvarkyklė „Swift“ paketų tvarkyklė, kuriame pateikiami modulių ir paketų su bibliotekomis ir programomis Swift kalba platinimo, priklausomybių valdymo, automatinio įkėlimo, komponentų kūrimo ir susiejimo įrankiai.

Šaltinis: opennet.ru

Добавить комментарий