您的位置: 首頁 >科技 >

Apple發(fā)布了具有ABI穩(wěn)定性 庫演進等的Swift 5

2022-07-04 09:20:40 編輯:扶彪凡 來源:
導讀 新的高級電視產品(Apple TV +),新聞和雜志訂閱服務(Apple News +)以及信用卡(Apple Card)并不是Apple今天推出的唯一產品。在Swift

新的高級電視產品(Apple TV +),新聞和雜志訂閱服務(Apple News +)以及信用卡(Apple Card)并不是Apple今天推出的唯一產品。在Swift.org的博客文章中,Apple的語言和運行時團隊經理Ted Kremenek宣布推出最新版本的Apple編譯編程語言,適用于iOS,macOS,watchOS,tvOS,Linux,z / OS和其他平臺現在已經正式上市,在Xcode 10.2的2月測試版和Swift Playgrounds 3.0的首次亮相后獲得了支持。

Swift 5與Swift 4,Swift 4,1和Swift 4.2兼容,Xcode 10.2有一個代碼遷移器,可以自動處理一些必要的源代碼更改。可以下載Ubuntu 18.04,Ubuntu 16.04和Ubuntu 14.04的官方二進制文件以及工具鏈,Apple已經在Swift.org上發(fā)布了Swift編程語言指南的更新版本。

對于初學者來說,Swift編程語言旨在與Apple的Cocoa和Cocoa Touch框架以及為iPhone,Apple TV和iPad等Apple產品編寫的現有Objective-C代碼配合使用。它使用LLVM編譯器框架構建,并于2014年與Xcode 6一起推出,它使用Objective-C運行時庫,允許它在一個程序中與C,Objective-C和C ++一起運行。

那么Swift 5帶來了什么呢?ABI穩(wěn)定性可能是亮點 - 它可以實現使用不同版本的Swift編譯的應用程序和庫之間的二進制兼容性,即使使用與舊語言的兼容模式也是如此。(例如,使用Swift 5構建的應用程序將在安裝了Swift 5標準庫的系統(tǒng)上運行,以及具有假設的Swift 6的應用程序。)此外,Swift運行時和標準庫現在隨操作系統(tǒng)一起移動,從而避免了需要部署到即將發(fā)布的OS版本的應用程序,以在應用程序包中嵌入標準Swift庫和覆蓋庫。

截至目前,Swift已宣布ABI在macOS,iOS,watchOS和tvOS上保持穩(wěn)定。

一個相關的新功能是模塊穩(wěn)定性,它使客戶端可以使用庫而不必擔心構建它們的編譯器和庫演變,它允許開發(fā)人員在不必重新編譯客戶端的情況下發(fā)布新版本的庫。由于應用程序細化,運行iOS 12.2,watchOS 5.2和tvOS 12.2的設備上的Swift應用程序不再包含標準庫和Swift SDK疊加層的動態(tài)鏈接庫,從而縮小了打包尺寸并縮短了啟動時間。

另外,與Swift 5的標準庫相結合,改進了對字符串文字(源字符集中表示字符串值的字符序列)和結果和SIMD矢量類型的原始文本的支持,以及對字符串插值的增強(評估a的過程)包含一個或多個占位符的字符串文字)以及字典和集合的性能改進。Swift 5還將ASCII和Unicode豐富的字符串的首選編碼從UTF-16切換到UTF-8,Apple稱這可以使內存使用率降低50%。

那不是全部。Swift 5默認為調試和發(fā)布版本強制執(zhí)行對內存的獨占訪問(在Swift 4中,運行時檢查僅在調試版本中啟用),并支持動態(tài)可調用類型,Apple稱這應該有助于提高與動態(tài)語言(如Python,JavaScript)的互操作性和Ruby。最后,Swift Package Manager包括依賴鏡像和特定于目標的構建設置,以及自定義部署目標和生成代碼覆蓋率數據的能力。


免責聲明:本文由用戶上傳,如有侵權請聯系刪除!

2016-2022 All Rights Reserved.平安財經網.復制必究 聯系QQ280 715 8082   備案號:閩ICP備19027007號-6

本站除標明“本站原創(chuàng)”外所有信息均轉載自互聯網 版權歸原作者所有。