Apple stel Swift 5.3-programmeertaal en oopbron Swift System-biblioteek vry

appel aangekondig oor die opening van die bronkode van die biblioteek Swift stelsel, wat 'n idiomatiese stel programmeringskoppelvlakke bied aan stelseloproepe en laevlak datatipes. Swift System het oorspronklik net stelseloproepe vir Apple-platforms ondersteun, maar is nou na Linux oorgeplaas. Swift System kode is geskryf in Swift taal en versprei deur gelisensieer onder Apache 2.0.

Swift System bied 'n enkele toegangspunt tot stelselkoppelvlakke wat op alle ondersteunde platforms gebruik kan word sonder die behoefte aan spesifieke C-raamwerke in Swift-programme. Terselfdertyd verenig Swift System nie die stelseloproepe self nie, maar bied 'n aparte subset van API's vir elke ondersteunde platform, met inagneming van die gedrag van hierdie platform en akkuraat weerspieël die laevlak-koppelvlakke van die bedryfstelsel. Die sleuteldoelwit van die skep van die Swift-stelsel is om die ontwikkeling van kruisplatformbiblioteke en toepassings te vereenvoudig. SwiftNIO и SwiftPM. Die Swift-stelsel skakel nie die behoefte vir vertakking op grond van "#if os()" uit wanneer toegang tot lae-vlak primitiewe verkry word nie, maar dit maak hierdie werk veiliger en
gemaklik.

Jy kan ook let publikasie programmeertaal vrystelling Swift 5.3. Amptelike bouwerk voorberei vir Linux (Ubuntu 16.04/18.04/20.04, CentOS 7/8), macOS (Xcode 12) en Windows 10. Brontekste versprei gelisensieer onder Apache 2.0.

Die nuwe weergawe voeg aanvanklike ondersteuning vir die Windows-platform en begin verskaffing van gereedskap vir die bou en uitvoer van Swift-toepassings op Windows 10. Die taalfunksies is steeds verfyn. Nuwe kenmerke sluit in die byvoeging van 'n initialiseerder vir die String tipe, uitgebreide gebruik van die "where" uitdrukking, veranderinge in didSet semantiek, ondersteuning vir die spesifikasie van veelvuldige patrone in Catch uitdrukkings, en die byvoeging van 'n tipe
Float16, atoom geheue bewerkings.

Die grootte van die gevolglike toepassings is verminder - as in Swift 4 die grootte van die saamgestelde program 2.3 keer groter was as die weergawe in Objective-C, is die gaping nou tot 1.5 keer verminder. Die nuwe vrystelling versnel ook die inkrementele bou- en boukode aansienlik met 'n groot aantal eiendomme en funksies wat vanaf ander biblioteke ingevoer word. Die diagnostiese gereedskap in die samesteller en die kwaliteit van foutboodskappe is verbeter. Die pakketbestuurder bied die vermoë om bykomende hulpbronne wat nodig is tydens looptyd, soos beelde, in pakkette in te sluit. Die pakketbestuurder voeg ook ondersteuning by vir komponente vir lokalisering en die vermoë om voorwaardelike afhanklikhede te definieer.

Onthou dat die Swift-taal die beste elemente van die C- en Objective-C-tale erf, en 'n objekmodel bied wat versoenbaar is met Objective-C (Swift-kode kan met C en Objective-C-kode gemeng word), maar verskil in die gebruik van outomatiese geheue toekenning en beheer oorvloei van veranderlikes en skikkings, wat die betroubaarheid en sekuriteit van die kode aansienlik verhoog. Swift bied ook baie moderne programmeringstegnieke, soos sluitings, generiese programmering, lambda-uitdrukkings, tupels en woordeboektipes, vinnige versamelingsbewerkings en elemente van funksionele programmering. Die Linux-weergawe is nie gekoppel aan die Objective-C Runtime nie, wat toelaat dat die taal gebruik word in omgewings wat nie Objective-C-ondersteuning het nie.

Die Swift-implementering is gebou met behulp van tegnologieë van die gratis LLVM-projek. Om hoë werkverrigting te verseker, word Swift-programme saamgestel in inheemse kode wat 30% vinniger loop as Objective-C-kode in Apple-toetse. In plaas van 'n vullisverwyderaar, gebruik Swift voorwerpverwysingtelling. Die pakket sluit 'n pakketbestuurder in Swift Pakketbestuurder, wat gereedskap verskaf vir die verspreiding van modules en pakkette met biblioteke en toepassings in die Swift-taal, die bestuur van afhanklikhede, outomatiese laai, bou en koppeling van komponente.

Bron: opennet.ru

Voeg 'n opmerking