Kotlin 1.8.0 版本已經(jīng)正式發(fā)布,以下是該版本更新中的一些主要內(nèi)容:
針對(duì) JVM 的新實(shí)驗(yàn)性功能:遞歸復(fù)制或刪除目錄內(nèi)容
Kotlin 1.8.0 為java.nio.file.Path
引入了兩個(gè)新的擴(kuò)展函數(shù):copyToRecursively()
和deleteRecursively()
,它們?cè)试S你以遞歸方式:-
將一個(gè)目錄及其內(nèi)容復(fù)制到另一個(gè)目的地
-
刪除一個(gè)目錄和它的內(nèi)容
用于java.nio.file.path
的這些新函數(shù)是實(shí)驗(yàn)性的。要使用它們,你需要選擇加入@OptIn(kotlin.io.path.ExperimentalPathApi::class)
或@kotlin.io.path.ExperimentalPathApi
。另外,你也可以使用編譯器選項(xiàng)-opt-in=kotlin.io.path.ExperimentalPathApi
。
改進(jìn)了 kotlin-reflect 的性能
利用kotlin-reflect
現(xiàn)在是用 JVM target 1.8 編譯的這一事實(shí),我們將內(nèi)部緩存機(jī)制遷移到 Java 的ClassValue
。以前我們只緩存KClass
,但現(xiàn)在我們也緩存了KType
和KDeclarationContainer
。這些變化使得調(diào)用typeOf()
時(shí)的性能得到了明顯的改善。新增 -Xdebug 編譯器選項(xiàng),以獲得更好的調(diào)試體驗(yàn)
Kotlin 1.8.0 增加了一個(gè)新的-Xdebug
編譯器選項(xiàng),它可以禁用優(yōu)化以獲得更好的調(diào)試體驗(yàn)。目前,該選項(xiàng)禁用了 coroutines 的 "已優(yōu)化" 功能。在未來,當(dāng)我們添加了更多的優(yōu)化功能后,這個(gè)選項(xiàng)也將禁用它們。
kotlin-stdlib-jdk7
和kotlin-stdlib-jdk8
合并為kotlin-stdlib
在 Kotlin 1.8.0 中,標(biāo)準(zhǔn)庫(kù)(kotlin-stdlib
、kotlin-reflect
和kotlin-script-*
)是用 JVM target 1.8 編譯的。此前,標(biāo)準(zhǔn)庫(kù)是以 JVM target 1.6 編譯的。Kotlin 1.8.0 不再支持 JVM targets 1.6 和 1.7。因此,你不再需要在構(gòu)建腳本中單獨(dú)聲明kotlin-stdlib-jdk7
和kotlin-stdlib-jdk8
,因?yàn)檫@些工件的內(nèi)容已經(jīng)并入kotlin-stdlib
。改進(jìn)了 Objective-C/Swift 的互操作性
為了使 Kotlin 與 Objective-C 和 Swift 更具有互操作性,1.8.0 增加了三個(gè)新的注解:-
@ObjCName
允許你在 Swift 或 Objective-C 中指定一個(gè)更習(xí)慣的名字,而不是重新命名 Kotlin 聲明。 -
@HiddenFromObjC
允許你從 Objective-C 中隱藏一個(gè) Kotlin 聲明 -
@ShouldRefineInSwift
對(duì)于用 Swift 編寫的包裝器替換 Kotlin 聲明很有用
與 Gradle 7.3 兼容
Kotlin 1.8.0 完全支持 Gradle 7.2 和 7.3 版本,這個(gè)版本帶來了很多變化:-
將 Kotlin 編譯器選項(xiàng)作為 Gradle 惰性屬性公開
-
提高了最小支持版本
-
能夠禁用 Kotlin 守護(hù)程序的回退策略
-
強(qiáng)制檢查相關(guān)的 Kotlin 和 Java 編譯任務(wù)的 JVM target 兼容性是否相等
-
SWIFT
+關(guān)注
關(guān)注
0文章
116瀏覽量
23806 -
kotlin
+關(guān)注
關(guān)注
0文章
60瀏覽量
4196
原文標(biāo)題:Kotlin 1.8.0發(fā)布,改進(jìn)性能和Swift的互操作性
文章出處:【微信號(hào):OSC開源社區(qū),微信公眾號(hào):OSC開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論