Gipaila sa Apple ang Swift 5.2 programming language

Apple gipatik pagpagawas sa programming language Swift 5.2. Opisyal nga pagtukod giandam alang sa Linux (Ubuntu 16.04, 18.04) ug macOS (Xcode). Tinubdan nga mga teksto pagkaylap lisensyado ubos sa Apache 2.0.

Sa pag-andam sa bag-ong pagpagawas, ang nag-unang pagtagad gibayad sa pagpalapad sa diagnostic nga mga himan sa compiler, pagdugang sa pagkakasaligan sa debugging, pagpalambo sa dependency handling sa package manager, ug pagpalapad sa suporta alang sa LSP (Language Server Protocol). Gidugang ang suporta sa pinulongan gitawag ug values ΠΈ oportunidad gamit ang mga ekspresyon sama sa "\Root.value" isip mga gimbuhaton.

Hinumdumi nga ang Swift nga pinulongan nakapanunod sa labing maayo nga mga elemento sa C ug Objective-C nga mga pinulongan, ug naghatag ug object model nga compatible sa Objective-C (Swift code mahimong isagol sa C ug Objective-C code), apan lahi sa paggamit sa automatic alokasyon sa panumduman ug pagkontrolar sa pag-awas sa mga baryable ug arrays, nga makadugang sa pagkakasaligan ug seguridad sa code. Nagtanyag usab ang Swift og daghang mga moderno nga teknik sa pagprograma, sama sa mga pagsira, generic nga programming, mga ekspresyon sa lambda, tuple ug mga tipo sa diksyonaryo, paspas nga operasyon sa pagkolekta, ug mga elemento sa functional programming. Ang bersyon sa Linux wala nahigot sa Objective-C Runtime, nga nagtugot sa pinulongan nga magamit sa mga palibot nga kulang sa Objective-C nga suporta.

Ang pagpatuman sa Swift gitukod gamit ang mga teknolohiya gikan sa libre nga proyekto sa LLVM. Aron masiguro ang taas nga pasundayag, ang mga programa sa Swift gihugpong sa lumad nga code nga nagpadagan sa 30% nga mas paspas kaysa Objective-C code sa mga pagsulay sa Apple. Imbis usa ka tigkolekta sa basura, gigamit ni Swift ang pag-ihap sa reference sa butang. Ang package naglakip sa package manager Swift Package Manager, nga naghatag mga himan alang sa pag-apod-apod sa mga module ug mga pakete nga adunay mga librarya ug aplikasyon sa Swift nga sinultian, pagdumala sa mga dependency, awtomatiko nga pagkarga, pagtukod ug pag-link sa mga sangkap.

Source: opennet.ru

Idugang sa usa ka comment