Apple izdaje Swift 5.3 programski jezik i open source biblioteku Swift System

Apple najavljeno o otvaranju izvornog koda biblioteke Swift System, koji pruža idiomatski skup programskih interfejsa za sistemske pozive i tipove podataka niskog nivoa. Swift System je prvobitno podržavao samo sistemske pozive za Apple platforme, ali je sada prenet na Linux. Swift sistemski kod je napisan na Swift jeziku i distribuira licenciran pod Apache 2.0.

Swift System pruža jednu tačku pristupa sistemskim interfejsima koji se mogu koristiti na svim podržanim platformama bez potrebe za specifičnim C okvirima u Swift programima. Istovremeno, Swift System ne objedinjuje same sistemske pozive, već obezbeđuje poseban podskup API-ja za svaku podržanu platformu, uzimajući u obzir ponašanje ove platforme i precizno odražavajući interfejse niskog nivoa operativnog sistema. Ključni cilj stvaranja Swift sistema je pojednostaviti razvoj višeplatformskih biblioteka i aplikacija kao što su SwiftNIO и SwiftPM. Swift sistem ne eliminiše potrebu za grananjem na osnovu "#if os()" kada se pristupa primitivima niskog nivoa, ali čini ovaj rad sigurnijim i
udobno.

Također možete primijetiti objavljivanje izdanje programskog jezika Swift 5.3. Službene zgrade pripremljeno za Linux (Ubuntu 16.04/18.04/20.04, CentOS 7/8), macOS (Xcode 12) i Windows 10. Izvorni tekstovi širenje licenciran pod Apache 2.0.

Novo izdanje dodaje početnu podršku za Windows platformu i započeo nabavka alata za pravljenje i pokretanje Swift aplikacija na Windows 10. Funkcionalnost jezika je nastavila da se usavršava. Nove karakteristike uključuju dodavanje inicijalizatora za tip String, proširenu upotrebu izraza "gdje", promjene u didSet semantici, podršku za specificiranje više uzoraka u Catch izrazima i dodavanje tipa
Float16, atomski memorijske operacije.

Veličina rezultirajućih aplikacija je smanjena - ako je u Swiftu 4 veličina sastavljenog programa bila 2.3 puta veća od verzije u Objective-C, sada je jaz smanjen na 1.5 puta. Novo izdanje također značajno ubrzava inkrementalni kod izgradnje i izgradnje s velikim brojem svojstava i funkcija uvezenih iz drugih biblioteka. Unaprijeđeni su dijagnostički alati u kompajleru i kvalitet poruka o greškama. Upravitelj paketa pruža mogućnost uključivanja dodatnih resursa potrebnih u vrijeme izvođenja, kao što su slike, u pakete. Upravitelj paketa također dodaje podršku za komponente za lokalizaciju i mogućnost definiranja uvjetnih ovisnosti.

Podsjetimo da Swift jezik nasljeđuje najbolje elemente jezika C i Objective-C i pruža objektni model kompatibilan sa Objective-C (Swift kod se može miješati sa C i Objective-C kodom), ali se razlikuje po upotrebi automatskog alokacija memorije i kontrola prelivanja varijabli i nizova, što značajno povećava pouzdanost i sigurnost koda. Swift također nudi mnoge moderne tehnike programiranja, kao što su zatvaranja, generičko programiranje, lambda izrazi, tuple i tipovi rječnika, operacije brzog prikupljanja i elementi funkcionalnog programiranja. Linux verzija nije vezana za Objective-C Runtime, što omogućava da se jezik koristi u okruženjima koja nemaju podršku za Objective-C.

Swift implementacija je izgrađena korištenjem tehnologija iz besplatnog LLVM projekta. Da bi se osigurale visoke performanse, Swift programi se kompajliraju u izvorni kod koji radi 30% brže od Objective-C koda u Apple testovima. Umjesto sakupljača smeća, Swift koristi brojanje referenci objekata. Paket uključuje menadžer paketa Swift Package Manager, koji obezbeđuje alate za distribuciju modula i paketa sa bibliotekama i aplikacijama na Swift jeziku, upravljanje zavisnostima, automatizovano učitavanje, izgradnju i povezivanje komponenti.

izvor: opennet.ru

Dodajte komentar