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

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

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

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

針對 JVM 的新實驗性功能:遞歸復(fù)制或刪除目錄內(nèi)容

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

  • 刪除一個目錄和它的內(nèi)容

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

改進(jìn)了 kotlin-reflect 的性能

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

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

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

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

在 Kotlin 1.8.0 中,標(biāo)準(zhǔn)庫(kotlin-stdlib、kotlin-reflectkotlin-script-*)是用 JVM target 1.8 編譯的。此前,標(biāo)準(zhǔn)庫是以 JVM target 1.6 編譯的。Kotlin 1.8.0 不再支持 JVM targets 1.6 和 1.7。因此,你不再需要在構(gòu)建腳本中單獨聲明kotlin-stdlib-jdk7kotlin-stdlib-jdk8,因為這些工件的內(nèi)容已經(jīng)并入kotlin-stdlib

改進(jìn)了 Objective-C/Swift 的互操作性

為了使 Kotlin 與 Objective-C 和 Swift 更具有互操作性,1.8.0 增加了三個新的注解:
  • @ObjCName允許你在 Swift 或 Objective-C 中指定一個更習(xí)慣的名字,而不是重新命名 Kotlin 聲明。

  • @HiddenFromObjC允許你從 Objective-C 中隱藏一個 Kotlin 聲明

  • @ShouldRefineInSwift對于用 Swift 編寫的包裝器替換 Kotlin 聲明很有用

與 Gradle 7.3 兼容

Kotlin 1.8.0 完全支持 Gradle 7.2 和 7.3 版本,這個版本帶來了很多變化:
  • 將 Kotlin 編譯器選項作為 Gradle 惰性屬性公開

  • 提高了最小支持版本

  • 能夠禁用 Kotlin 守護(hù)程序的回退策略

  • 強(qiáng)制檢查相關(guān)的 Kotlin 和 Java 編譯任務(wù)的 JVM target 兼容性是否相等


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

    關(guān)注

    0

    文章

    91

    瀏覽量

    23759
  • kotlin
    +關(guān)注

    關(guān)注

    0

    文章

    60

    瀏覽量

    4166

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

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

收藏 人收藏

    評論

    相關(guān)推薦

    操作性對智能家居的重要

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

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

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

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

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

    區(qū)塊鏈操作標(biāo)準(zhǔn)化應(yīng)用及經(jīng)驗,華為云 BCS 獲評團(tuán)體標(biāo)準(zhǔn)示范項目

    各行各業(yè)的應(yīng)用拓展,不 同鏈系統(tǒng)之間的操作難、上層應(yīng)用與底層鏈對接切換難、鏈上鏈下可信 交互難的問題日益突出(概括為:區(qū)塊鏈的操作性),成為制約區(qū)塊鏈 發(fā)展的瓶頸。 區(qū)塊鏈
    的頭像 發(fā)表于 02-23 22:00 ?518次閱讀
    區(qū)塊鏈<b class='flag-5'>互</b><b class='flag-5'>操作</b>標(biāo)準(zhǔn)化應(yīng)用及經(jīng)驗,華為云 BCS 獲評團(tuán)體標(biāo)準(zhǔn)示范項目

    RZ/G柔性軟件包v2.0.1發(fā)布說明

    電子發(fā)燒友網(wǎng)站提供《RZ/G柔性軟件包v2.0.1發(fā)布說明.pdf》資料免費下載
    發(fā)表于 02-21 10:48 ?0次下載
    RZ/G柔性軟件包v2.0.1<b class='flag-5'>發(fā)布</b>說明

    QE for Motor V1.3.0發(fā)布說明

    電子發(fā)燒友網(wǎng)站提供《QE for Motor V1.3.0發(fā)布說明.pdf》資料免費下載
    發(fā)表于 02-19 09:35 ?0次下載
    QE for Motor V1.3.0<b class='flag-5'>發(fā)布</b>說明

    RZ/V2L DRP-AI支持包版本.7.41發(fā)布說明

    電子發(fā)燒友網(wǎng)站提供《RZ/V2L DRP-AI支持包版本.7.41發(fā)布說明.pdf》資料免費下載
    發(fā)表于 02-01 10:07 ?0次下載
    RZ/V2L DRP-AI支持包版本.7.41<b class='flag-5'>發(fā)布</b>說明

    RZ/V多操作系統(tǒng)包V1.12發(fā)布說明

    電子發(fā)燒友網(wǎng)站提供《RZ/V多操作系統(tǒng)包V1.12發(fā)布說明.pdf》資料免費下載
    發(fā)表于 02-01 09:47 ?0次下載
    RZ/V多<b class='flag-5'>操作</b>系統(tǒng)包V1.12<b class='flag-5'>發(fā)布</b>說明

    e2 studio 2024-01發(fā)布說明

    電子發(fā)燒友網(wǎng)站提供《e2 studio 2024-01發(fā)布說明.pdf》資料免費下載
    發(fā)表于 01-30 09:47 ?1次下載
    e2 studio 2024-01<b class='flag-5'>發(fā)布</b>說明

    CS+適用于CC V8.11.00發(fā)布說明

    電子發(fā)燒友網(wǎng)站提供《CS+適用于CC V8.11.00發(fā)布說明.pdf》資料免費下載
    發(fā)表于 01-29 11:46 ?0次下載
    CS+適用于CC V8.11.00<b class='flag-5'>發(fā)布</b>說明

    電容式觸摸的QE V3.3.0發(fā)布說明

    電子發(fā)燒友網(wǎng)站提供《電容式觸摸的QE V3.3.0發(fā)布說明.pdf》資料免費下載
    發(fā)表于 01-29 10:58 ?0次下載
    電容式觸摸的QE V3.3.0<b class='flag-5'>發(fā)布</b>說明

    新思科技成功實現(xiàn)與英特爾PCIe 6.0測試芯片的操作性

    新思科技PCIe 6.0 IP與英特爾 PCIe 6.0測試芯片實現(xiàn)操作 在64GT/s 高速連接下成功驗證操作性,降低高性能計算SoC
    的頭像 發(fā)表于 10-16 09:22 ?698次閱讀

    新思科技PCIe 6.0 IP與英特爾PCIe 6.0測試芯片實現(xiàn)操作

    在64GT/s高速連接下成功驗證操作性,降低高性能計算SoC的集成風(fēng)險 ? 加利福尼亞州桑尼維爾, 2023 年 10 月 12 日 -- 新思科技(Synopsys, Inc.,納斯達(dá)克股票代碼
    發(fā)表于 10-12 15:11 ?271次閱讀

    RH27C:精確的操作性放大數(shù)據(jù)表 ADI

    電子發(fā)燒友網(wǎng)為你提供ADI(ADI)RH27C:精確的操作性放大數(shù)據(jù)表相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊,更有RH27C:精確的操作性放大數(shù)據(jù)表的引腳圖、接線圖、封裝手冊、中文資料、英文資料,RH27C:精確的操作性放大數(shù)據(jù)表真值表,RH2
    發(fā)表于 10-08 16:12
    RH27C:精確的<b class='flag-5'>操作性</b>放大數(shù)據(jù)表 ADI

    由Java改為 Kotlin過程中遇到的坑

    最近了解了下 Kotlin ,其中的很多語法糖很有意思,并且可以與 Java 無縫兼容。故嘗試在一個 SpringBoot 工程上將部分類修改為 Kotlin ,下面記錄了由 Java 改為
    的頭像 發(fā)表于 09-30 16:51 ?705次閱讀
    由Java改為 <b class='flag-5'>Kotlin</b>過程中遇到的坑