0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Kotlin 1.8.0發(fā)布,改進性能和Swift的互操作性

OSC開源社區(qū) ? 來源: OSC開源社區(qū) ? 2023-01-03 15:24 ? 次閱讀
Kotlin 1.8.0 版本已經正式發(fā)布,以下是該版本更新中的一些主要內容:

針對 JVM 的新實驗性功能:遞歸復制或刪除目錄內容

Kotlin 1.8.0 為java.nio.file.Path引入了兩個新的擴展函數(shù):copyToRecursively()deleteRecursively(),它們允許你以遞歸方式:
  • 將一個目錄及其內容復制到另一個目的地

  • 刪除一個目錄和它的內容

這些函數(shù)作為備份過程的一部分可能非常有用。
用于java.nio.file.path的這些新函數(shù)是實驗性的。要使用它們,你需要選擇加入@OptIn(kotlin.io.path.ExperimentalPathApi::class)@kotlin.io.path.ExperimentalPathApi。另外,你也可以使用編譯器選項-opt-in=kotlin.io.path.ExperimentalPathApi。

改進了 kotlin-reflect 的性能

利用kotlin-reflect現(xiàn)在是用 JVM target 1.8 編譯的這一事實,我們將內部緩存機制遷移到 JavaClassValue。以前我們只緩存KClass,但現(xiàn)在我們也緩存了KTypeKDeclarationContainer。這些變化使得調用typeOf()時的性能得到了明顯的改善。

新增 -Xdebug 編譯器選項,以獲得更好的調試體驗

Kotlin 1.8.0 增加了一個新的-Xdebug編譯器選項,它可以禁用優(yōu)化以獲得更好的調試體驗。目前,該選項禁用了 coroutines 的 "已優(yōu)化" 功能。在未來,當我們添加了更多的優(yōu)化功能后,這個選項也將禁用它們。

kotlin-stdlib-jdk7kotlin-stdlib-jdk8合并為kotlin-stdlib

在 Kotlin 1.8.0 中,標準庫(kotlin-stdlib、kotlin-reflectkotlin-script-*)是用 JVM target 1.8 編譯的。此前,標準庫是以 JVM target 1.6 編譯的。Kotlin 1.8.0 不再支持 JVM targets 1.6 和 1.7。因此,你不再需要在構建腳本中單獨聲明kotlin-stdlib-jdk7kotlin-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 兼容性是否相等


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • SWIFT
    +關注

    關注

    0

    文章

    116

    瀏覽量

    24249
  • kotlin
    +關注

    關注

    0

    文章

    60

    瀏覽量

    4326

原文標題:Kotlin 1.8.0發(fā)布,改進性能和Swift的互操作性

文章出處:【微信號:OSC開源社區(qū),微信公眾號:OSC開源社區(qū)】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    Kuikly鴻蒙版正式開源 —— 揭秘卓越性能適配之旅

    Kotlin Native可以直調、無額外跨VM/語言調用開銷。除了早期CAPI版本存在一些Bug和功能缺失等問題,CAPI方案也在開發(fā)難度、復雜上也更高,但為了追求極致性能表現(xiàn),我們最終決定采用
    發(fā)表于 06-04 16:46

    解讀新發(fā)布的 Matter 1.4:推動智能家居設備操作性的關鍵升級

    著Matter 1.4的發(fā)布,智能家居和物聯(lián)網(IoT)行業(yè)迎來了新的里程碑。Matter作為全球統(tǒng)一的智能家居互聯(lián)協(xié)議,在操作性、安全和能效優(yōu)化等方面取得了重大突破。本文將從Ma
    的頭像 發(fā)表于 05-16 17:38 ?183次閱讀

    重磅更新 | 先楫半導體HPM_APPS v1.9.0發(fā)布

    重磅更新 | 先楫半導體HPM_APPS v1.9.0發(fā)布
    的頭像 發(fā)表于 05-13 11:29 ?251次閱讀
    重磅更新 | 先楫半導體HPM_APPS v1.9.0<b class='flag-5'>發(fā)布</b>

    Matter 1.4如何提升智能家居設備操作性

    SiliconLabs(芯科科技)Matter首席產品經理Rob Alexander先生近期制作本篇趨勢應用文章,重點介紹了Matter 1.4標準版本引入的全新功能,以及這些新特性如何用來提升智能家居設備的操作性,并進一步拓展設備支持類型到能源管理的應用領域。
    的頭像 發(fā)表于 03-11 10:50 ?568次閱讀

    新思科技與英特爾攜手完成UCIe操作性測試

    近日,新思科技與英特爾攜手合作,率先完成了UCIe(Universal Chiplet Interconnect Express)操作性測試芯片演示,并成功推出了包含控制器、PHY(物理層)和驗證
    的頭像 發(fā)表于 02-18 14:18 ?388次閱讀

    hpm_apps v1.8.0上線:HPM6200四軸伺服驅控方案重磅發(fā)布!

    hpm_apps v1.8.0上線:HPM6200四軸伺服驅控方案重磅發(fā)布!
    的頭像 發(fā)表于 02-12 08:04 ?501次閱讀
    hpm_apps v<b class='flag-5'>1.8.0</b>上線:HPM6200四軸伺服驅控方案重磅<b class='flag-5'>發(fā)布</b>!

    先楫半導體HPM_SDK v1.8.0 發(fā)布

    先楫半導體HPM_SDK v1.8.0 發(fā)布
    的頭像 發(fā)表于 02-08 13:39 ?523次閱讀
    先楫半導體HPM_SDK v<b class='flag-5'>1.8.0</b> <b class='flag-5'>發(fā)布</b>

    樂鑫 ESP32-C6 通過 Thread 1.4 操作性認證

    ThreadGroup授權實驗室的嚴格測試中,展現(xiàn)了與最新Thread1.4協(xié)議的無縫兼容,充分展現(xiàn)了其在性能、安全和廣泛設備操作性
    的頭像 發(fā)表于 02-06 18:02 ?395次閱讀
    樂鑫 ESP32-C6 通過 Thread 1.4 <b class='flag-5'>互</b><b class='flag-5'>操作性</b>認證

    PCIe 6.0 操作性PHY驗證測試方案

    ?和 UCIe?等協(xié)議。CXL提供緩存一致互連,支持多臺機器間的內存擴展,提供最低延遲和最高帶寬。CXL和NVM Express?利用 PCIe 的物理層和簡便的協(xié)議適應。UCIe作為
    的頭像 發(fā)表于 01-02 08:43 ?643次閱讀
    PCIe 6.0 <b class='flag-5'>互</b><b class='flag-5'>操作性</b>PHY驗證測試方案

    TI ADS42JB69系列JESD204B ADC與Altera FPGA的操作性

    電子發(fā)燒友網站提供《TI ADS42JB69系列JESD204B ADC與Altera FPGA的操作性.pdf》資料免費下載
    發(fā)表于 12-10 14:27 ?0次下載
    TI ADS42JB69系列JESD204B ADC與Altera FPGA的<b class='flag-5'>互</b><b class='flag-5'>操作性</b>

    M-LVDS和總線LVDS的操作性

    電子發(fā)燒友網站提供《M-LVDS和總線LVDS的操作性.pdf》資料免費下載
    發(fā)表于 09-29 09:46 ?1次下載
    M-LVDS和總線LVDS的<b class='flag-5'>互</b><b class='flag-5'>操作性</b>

    無線充芯片-手機無線充電芯片-無線充電芯片開發(fā)定制

    基于需求信息,進行無線充電芯片的技術研發(fā)與創(chuàng)新。這包括芯片架構設計、電路布局優(yōu)化、算法開發(fā)等方面的工作。在研發(fā)過程中,需要充分考慮高效能量傳輸、兼容操作性以及成本控制等因素,確保芯片
    發(fā)表于 09-27 11:32

    操作性對智能家居的重要

    在智能家居領域,操作性對不同群體有不同的意義。消費者希望有多種選擇、較高的靈活性、簡單的設置以及安全感,確保設備不會被黑客攻擊。最重要的是,他們希望設備能夠“正常工作”。
    的頭像 發(fā)表于 08-26 17:29 ?6.1w次閱讀
    <b class='flag-5'>互</b><b class='flag-5'>操作性</b>對智能家居的重要<b class='flag-5'>性</b>

    是德科技攜手高通突破5G高頻段FR3操作性

    了業(yè)內首個在FR3頻段(高頻段)的端到端操作性和數(shù)據(jù)連接測試,這一成就標志著5G技術在高頻段應用上的重大進展。
    的頭像 發(fā)表于 08-14 11:24 ?1311次閱讀

    HPMicro Arduino支持包v0.1.0發(fā)布,適配功能揭曉!

    HPMicro Arduino支持包v0.1.0發(fā)布,適配功能揭曉!
    的頭像 發(fā)表于 07-11 08:18 ?797次閱讀
    HPMicro Arduino支持包v0.1.0<b class='flag-5'>發(fā)布</b>,適配功能揭曉!

    電子發(fā)燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品