Apple lanserer programmeringsspråket Swift 5.3 og Swift System-biblioteket med åpen kildekode

eple kunngjort om å åpne kildekoden til biblioteket Swift System, som gir et idiomatisk sett med programmeringsgrensesnitt til systemanrop og datatyper på lavt nivå. Swift System støttet opprinnelig bare systemanrop for Apple-plattformer, men har nå blitt overført til Linux. Swift System-koden er skrevet på Swift-språket og distribuert av lisensiert under Apache 2.0.

Swift System gir ett enkelt tilgangspunkt til systemgrensesnitt som kan brukes på alle støttede plattformer uten behov for spesifikke C-rammeverk i Swift-programmer. Samtidig forener ikke Swift System selve systemkallene, men gir et separat undersett av APIer for hver støttet plattform, tar hensyn til denne plattformens oppførsel og nøyaktig gjenspeiler lavnivågrensesnittene til operativsystemet. Hovedmålet med å lage Swift-systemet er å forenkle utviklingen av biblioteker og applikasjoner på tvers av plattformer som f.eks. SwiftNIO и SwiftPM. Swift-systemet eliminerer ikke behovet for forgrening basert på "#if os()" ved tilgang til lavnivå-primitiver, men det gjør dette arbeidet sikrere og
komfortabel.

Det kan også noteres utgivelse utgivelse av programmeringsspråk Swift 5.3. Offisielle bygg forberedt for Linux (Ubuntu 16.04/18.04/20.04, CentOS 7/8), macOS (Xcode 12) og Windows 10. Kildetekster spre lisensiert under Apache 2.0.

Den nye utgivelsen legger til innledende støtte for Windows-plattformen og startet tilførsel av verktøy for å bygge og kjøre Swift-applikasjoner på Windows 10. Språkfunksjonaliteten fortsatte å foredles. Nye funksjoner inkluderer tillegg av en initialisering for String-typen, utvidelse av bruken av "where"-uttrykket, endring av semantikken til didSet, støtte for å spesifisere flere mønstre i Catch-uttrykk, legge til en type
Float16, atomisk minneoperasjoner.

Størrelsen på de resulterende applikasjonene er redusert - hvis størrelsen på det sammensatte programmet i Swift 4 var 2.3 ganger større enn versjonen i Objective-C, er gapet nå redusert til 1.5 ganger. Den nye utgivelsen øker også betydelig hastighet på inkrementell bygge- og bygningskode med et stort antall egenskaper og funksjoner importert fra andre biblioteker. Diagnoseverktøyene i kompilatoren og kvaliteten på feilmeldingene er forbedret. Pakkebehandlingen gir muligheten til å inkludere ytterligere ressurser som trengs under kjøring, for eksempel bilder, i pakker. Pakkebehandlingen legger også til støtte for lokaliseringskomponenter og muligheten til å definere betingede avhengigheter.

Husk at Swift-språket arver de beste elementene fra C- og Objective-C-språkene, og gir en objektmodell som er kompatibel med Objective-C (Swift-kode kan blandes med C- og Objective-C-kode), men er forskjellig i bruken av automatisk minneallokering og kontrolloverflyt av variabler og arrays, noe som øker påliteligheten og sikkerheten til koden betydelig. Swift tilbyr også mange moderne programmeringsteknikker, slik som nedleggelser, generisk programmering, lambda-uttrykk, tupler og ordboktyper, raske innsamlingsoperasjoner og elementer av funksjonell programmering. Linux-versjonen er ikke knyttet til Objective-C Runtime, som gjør at språket kan brukes i miljøer som mangler Objective-C-støtte.

Swift-implementeringen er bygget ved hjelp av teknologier fra det gratis LLVM-prosjektet. For å sikre høy ytelse, er Swift-programmer kompilert til innfødt kode som kjører 30 % raskere enn Objective-C-kode i Apple-tester. I stedet for en søppeloppsamler bruker Swift objektreferansetelling. Pakken inkluderer en pakkebehandler Swift Package Manager, som gir verktøy for distribusjon av moduler og pakker med biblioteker og applikasjoner på Swift-språket, administrering av avhengigheter, automatisert lasting, bygging og kobling av komponenter.

Kilde: opennet.ru

Legg til en kommentar