Kotlin 1.8.0 版本已經正式發布,以下是該版本更新中的一些主要內容:
針對 JVM 的新實驗性功能:遞歸復制或刪除目錄內容
Kotlin 1.8.0 為java.nio.file.Path引入了兩個新的擴展函數:copyToRecursively()和deleteRecursively(),它們允許你以遞歸方式:-
將一個目錄及其內容復制到另一個目的地
-
刪除一個目錄和它的內容
用于java.nio.file.path的這些新函數是實驗性的。要使用它們,你需要選擇加入@OptIn(kotlin.io.path.ExperimentalPathApi::class)或@kotlin.io.path.ExperimentalPathApi。另外,你也可以使用編譯器選項-opt-in=kotlin.io.path.ExperimentalPathApi。
改進了 kotlin-reflect 的性能
利用kotlin-reflect現在是用 JVM target 1.8 編譯的這一事實,我們將內部緩存機制遷移到 Java 的ClassValue。以前我們只緩存KClass,但現在我們也緩存了KType和KDeclarationContainer。這些變化使得調用typeOf()時的性能得到了明顯的改善。新增 -Xdebug 編譯器選項,以獲得更好的調試體驗
Kotlin 1.8.0 增加了一個新的-Xdebug編譯器選項,它可以禁用優化以獲得更好的調試體驗。目前,該選項禁用了 coroutines 的 "已優化" 功能。在未來,當我們添加了更多的優化功能后,這個選項也將禁用它們。
kotlin-stdlib-jdk7和kotlin-stdlib-jdk8合并為kotlin-stdlib
在 Kotlin 1.8.0 中,標準庫(kotlin-stdlib、kotlin-reflect和kotlin-script-*)是用 JVM target 1.8 編譯的。此前,標準庫是以 JVM target 1.6 編譯的。Kotlin 1.8.0 不再支持 JVM targets 1.6 和 1.7。因此,你不再需要在構建腳本中單獨聲明kotlin-stdlib-jdk7和kotlin-stdlib-jdk8,因為這些工件的內容已經并入kotlin-stdlib。改進了 Objective-C/Swift 的互操作性
為了使 Kotlin 與 Objective-C 和 Swift 更具有互操作性,1.8.0 增加了三個新的注解:-
@ObjCName允許你在 Swift 或 Objective-C 中指定一個更習慣的名字,而不是重新命名 Kotlin 聲明。 -
@HiddenFromObjC允許你從 Objective-C 中隱藏一個 Kotlin 聲明 -
@ShouldRefineInSwift對于用 Swift 編寫的包裝器替換 Kotlin 聲明很有用
與 Gradle 7.3 兼容
Kotlin 1.8.0 完全支持 Gradle 7.2 和 7.3 版本,這個版本帶來了很多變化:-
將 Kotlin 編譯器選項作為 Gradle 惰性屬性公開
-
提高了最小支持版本
-
能夠禁用 Kotlin 守護程序的回退策略
-
強制檢查相關的 Kotlin 和 Java 編譯任務的 JVM target 兼容性是否相等
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
SWIFT
+關注
關注
0文章
125瀏覽量
24784 -
kotlin
+關注
關注
0文章
60瀏覽量
4475
原文標題:Kotlin 1.8.0發布,改進性能和Swift的互操作性
文章出處:【微信號:OSC開源社區,微信公眾號:OSC開源社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
熱點推薦
是德科技攜手愛立信賦能Pre-6G互操作性驗證
是德科技(NYSE: KEYS )近日宣布,與愛立信攜手合作,使用是德科技的WaveJudge無線分析儀解決方案,對愛立信Pre-6G基站(gNB)與Pre-6G原型設備間的互操作性進行故障排查
通過恩智浦RW612三頻無線MCU提升多協議互操作性
無線連接是現代智能家居和工業系統的基石,推動著無數更智能、更自主設備的普及。恩智浦非常重視無線互操作性,確保生態合作體系中的每臺設備能夠無縫協同工作的關鍵能力。
愛立信攜手蘋果和聯發科技加速構建6G生態系統
愛立信正通過與蘋果和聯發科技等領先設備及芯片制造商建立戰略合作伙伴關系,加速構建6G生態系統,驅動下一代連接技術的創新與互操作性,助力運營商及整個產業為移動網絡的未來做好準備。
IO序列化操作:提升系統互操作性的關鍵技術
在異構系統并存的今天,IO序列化操作成為實現系統間互操作性的核心技術。通過標準化的數據格式(如JSON、Protobuf、Hessian等),不同語言、平臺的系統得以無縫交換信息。合理設計序列化策略
是德科技與HEAD acoustics成功完成新一代eCall系統互操作性測試
是德科技(NYSE: KEYS )近日宣布,其基于UXM的新一代eCall(NG eCall)解決方案,已成功與全球汽車聲學測試領導者HEAD acoustics GmbH完成互操作性測試。
全新升級 | 匠芯創AiUIBuilder V2.0.0發布
近日,匠芯創自主研發的GUI開發工具AiUIBuilderV2.0.0發布。作為一款基于LVGL的UI設計工具,AiUIBuilder致力于通過拖拽式操作,加速基于匠芯創嵌入式平臺的圖形應用開發
Microchip與AVIVA Links實現ASA-ML互操作性驗證
汽車行業正加速從專有串行器/解串器(SerDes)解決方案向汽車串行器/解串器聯盟(Automotive SerDes Alliance)及其首個開放標準——ASA Motion Link(ASA-ML)構建的可互操作系統生態過渡。
Kuikly鴻蒙版正式開源 —— 揭秘卓越性能適配之旅
和Kotlin Native可以直調、無額外跨VM/語言調用開銷。除了早期CAPI版本存在一些Bug和功能缺失等問題,CAPI方案也在開發難度、復雜性上也更高,但為了追求極致性能表現,我們最終決定采用
發表于 06-04 16:46
解讀新發布的 Matter 1.4:推動智能家居設備互操作性的關鍵升級
著Matter 1.4的發布,智能家居和物聯網(IoT)行業迎來了新的里程碑。Matter作為全球統一的智能家居互聯協議,在互操作性、安全性和能效優化等方面取得了重大突破。本文將從Ma
是德科技發布人工智能系列解決方案
是德科技(NYSE:KEYS)發布Keysight AI(KAI),這是一系列端到端的解決方案,旨在幫助客戶通過使用真實世界的AI工作負載仿真從而驗證AI集群組件來擴展數據中心的AI處理能力。KAI提供系統級互操作性、
Valens聯合七家MIPI A-PHY芯片廠商完成互操作性測試,加速中國及全球MIPI A-PHY生態發展
2025年3月4日,全球汽車高速連接技術領導者Valens Semiconductor(以下簡稱“Valens”)(紐交所代碼:VLN)宣布,已與七家MIPI A-PHY芯片提供商成功完成了互操作性
Matter 1.4如何提升智能家居設備互操作性
SiliconLabs(芯科科技)Matter首席產品經理Rob Alexander先生近期制作本篇趨勢應用文章,重點介紹了Matter 1.4標準版本引入的全新功能,以及這些新特性如何用來提升智能家居設備的互操作性,并進一步拓展設備支持類型到能源管理的應用領域。
Kotlin 1.8.0發布,改進性能和Swift的互操作性
評論