Кампанія Apple
Swift System падае адзіную кропку доступу да сістэмных інтэрфейсаў, якую можна выкарыстоўваць на ўсіх падтрымоўваных платформах без ужывання ў Swift-праграмах спецыфічных абвязак на мове Сі. Пры гэтым Swift System не ўніфікуе самі сістэмныя выклікі, а падае асобнае падмноства API для кожнай падтрымоўванай платформы, якое ўлічвае паводзіны дадзенай платформы і сапраўды адбівалае нізкаўзроўневыя інтэрфейсы аперацыйнай сістэмы. Ключавой мэтай стварэння Swift System з'яўляецца спрашчэнне распрацоўкі крос-платформавых бібліятэк і дадаткаў, такіх як
зручнай.
Таксама можна адзначыць
У новым выпуску дададзена пачатковая падтрымка платформы Windows і
Float16,
Зніжаны памер выніковых прыкладанняў - калі ў Swift 4 памер сабранай праграмы перавышаў варыянт на Objective-C у 2.3 разы, то зараз разрыў скарочаны да 1.5 разы. У новым выпуску таксама прыкметна паскорана інкрыментальная зборка і зборка кода з вялікай колькасцю ўласцівасцяў і функцый, імпартаваных з іншых бібліятэк. Пашыраны сродкі дыягностыкі ў кампілятары і якасць выводных паведамленняў аб памылках. У пакетным мэнэджары рэалізаваная магчымасць уключэння ў пакеты дадатковых рэсурсаў, неабходных падчас выканання, такіх як выявы. У пакетны мэнэджар таксама дададзена падтрымка кампанентаў для лакалізацыі і магчымасць вызначэння ўмоўных залежнасцяў.
Нагадаем, што мова Swift успадкоўвае лепшыя элементы моў C і Objective-C, і дае аб'ектную мадэль, сумяшчальную з Objective-C (Swift-код можа змешвацца з кодам на З і Objective-C), але адрозніваецца выкарыстаннем сродкаў аўтаматычнага размеркавання памяці і кантролю перапаўненні зменных і масіваў, што значна павялічвае надзейнасць і бяспеку кода. Swift таксама прапануе мноства сучасных метадаў праграмавання, такіх як замыканні, абагульненае праграмаванне, лямбда-выразы, картэжы і слоўнікавыя тыпы, хуткія аперацыі над калекцыямі, элементы функцыянальнага праграмавання. Версія для Linux не прывязана да Objective-C Runtime, што дазваляе выкарыстоўваць мову ў асяроддзі, у якіх адсутнічае падтрымка Objective-C.
Рэалізацыя Swift пабудавана з задзейнічаннем тэхналогій вольнага праекта LLVM. Для забеспячэння высокай прадукцыйнасці Swift-праграмы кампілююцца ў машынны код, які выконваецца ў тэстах Apple на 30% хутчэй кода на Objective-C. Замест зборшчыка смецця ў Swift выкарыстоўваюцца сродкі падліку спасылак на аб'екты. У пастаўку ўваходзіць пакетны менеджэр
Крыніца: opennet.ru