0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Kotlin 1.8.0发布,改进性能和Swift的互操作性

OSC开源社区 来源: OSC开源社区 2023-01-03 15:24 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

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 编译的这一事实,我们将内部缓存机制迁移到 JavaClassValue。以前我们只缓存KClass,但现在我们也缓存了KTypeKDeclarationContainer。这些变化使得调用typeOf()时的性能得到了明显的改善。

新增 -Xdebug 编译器选项,以获得更好的调试体验

Kotlin 1.8.0 增加了一个新的-Xdebug编译器选项,它可以禁用优化以获得更好的调试体验。目前,该选项禁用了 coroutines 的 "已优化" 功能。在未来,当我们添加了更多的优化功能后,这个选项也将禁用它们。

kotlin-stdlib-jdk7kotlin-stdlib-jdk8合并为kotlin-stdlib

在 Kotlin 1.8.0 中,标准库(kotlin-stdlibkotlin-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 兼容性是否相等


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • SWIFT
    +关注

    关注

    0

    文章

    125

    浏览量

    24693
  • kotlin
    +关注

    关注

    0

    文章

    60

    浏览量

    4451

原文标题:Kotlin 1.8.0发布,改进性能和Swift的互操作性

文章出处:【微信号:OSC开源社区,微信公众号:OSC开源社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    是德科技与HEAD acoustics成功完成新一代eCall系统操作性测试

    是德科技(NYSE: KEYS )近日宣布,其基于UXM的新一代eCall(NG eCall)解决方案,已成功与全球汽车声学测试领导者HEAD acoustics GmbH完成操作性测试。
    的头像 发表于 11-18 11:29 434次阅读

    Microchip与AVIVA Links实现ASA-ML操作性验证

    汽车行业正加速从专有串行器/解串器(SerDes)解决方案向汽车串行器/解串器联盟(Automotive SerDes Alliance)及其首个开放标准——ASA Motion Link(ASA-ML)构建的可操作系统生态过渡。
    的头像 发表于 10-23 17:13 826次阅读

    Kuikly鸿蒙版正式开源 —— 揭秘卓越性能适配之旅

    Kotlin Native可以直调、无额外跨VM/语言调用开销。除了早期CAPI版本存在一些Bug和功能缺失等问题,CAPI方案也在开发难度、复杂上也更高,但为了追求极致性能表现,我们最终决定采用
    发表于 06-04 16:46

    Matter 智能家居的通用语言

    Matter由连接标准联盟(CSA)创建,旨在解决智能家居的操作性问题。Matter 基于简单性、操作性、可靠和安全
    发表于 05-19 15:35

    解读新发布的 Matter 1.4:推动智能家居设备操作性的关键升级

    着Matter 1.4的发布,智能家居和物联网(IoT)行业迎来了新的里程碑。Matter作为全球统一的智能家居互联协议,在操作性、安全和能效优化等方面取得了重大突破。本文将从Ma
    的头像 发表于 05-16 17:38 746次阅读

    重磅更新 | 先楫半导体HPM_APPS v1.9.0发布

    重磅更新 | 先楫半导体HPM_APPS v1.9.0发布
    的头像 发表于 05-13 11:29 1363次阅读
    重磅更新 | 先楫半导体HPM_APPS v1.9.0<b class='flag-5'>发布</b>

    是德科技发布人工智能系列解决方案

    是德科技(NYSE:KEYS)发布Keysight AI(KAI),这是一系列端到端的解决方案,旨在帮助客户通过使用真实世界的AI工作负载仿真从而验证AI集群组件来扩展数据中心的AI处理能力。KAI提供系统级操作性
    的头像 发表于 04-07 16:23 808次阅读

    Valens联合七家MIPI A-PHY芯片厂商完成操作性测试,加速中国及全球MIPI A-PHY生态发展

    2025年3月4日,全球汽车高速连接技术领导者Valens Semiconductor(以下简称“Valens”)(纽交所代码:VLN)宣布,已与七家MIPI A-PHY芯片提供商成功完成了操作性
    的头像 发表于 03-19 14:04 833次阅读
    Valens联合七家MIPI A-PHY芯片厂商完成<b class='flag-5'>互</b><b class='flag-5'>操作性</b>测试,加速中国及全球MIPI A-PHY生态发展

    Matter 1.4如何提升智能家居设备操作性

    SiliconLabs(芯科科技)Matter首席产品经理Rob Alexander先生近期制作本篇趋势应用文章,重点介绍了Matter 1.4标准版本引入的全新功能,以及这些新特性如何用来提升智能家居设备的操作性,并进一步拓展设备支持类型到能源管理的应用领域。
    的头像 发表于 03-11 10:50 1204次阅读

    新思科技与英特尔携手完成UCIe操作性测试

    近日,新思科技与英特尔携手合作,率先完成了UCIe(Universal Chiplet Interconnect Express)操作性测试芯片演示,并成功推出了包含控制器、PHY(物理层)和验证
    的头像 发表于 02-18 14:18 783次阅读

    hpm_apps v1.8.0上线:HPM6200四轴伺服驱控方案重磅发布

    hpm_apps v1.8.0上线:HPM6200四轴伺服驱控方案重磅发布
    的头像 发表于 02-12 08:04 1235次阅读
    hpm_apps v<b class='flag-5'>1.8.0</b>上线:HPM6200四轴伺服驱控方案重磅<b class='flag-5'>发布</b>!

    先楫半导体HPM_SDK v1.7.0发布!这些更新你值得关注!

    先楫半导体HPM_SDK v1.7.0发布!这些更新你值得关注!
    的头像 发表于 02-08 13:42 1058次阅读
    先楫半导体HPM_SDK v1.7.0<b class='flag-5'>发布</b>!这些更新你值得关注!

    先楫半导体HPM_SDK v1.8.0 发布

    先楫半导体HPM_SDK v1.8.0 发布
    的头像 发表于 02-08 13:39 1022次阅读
    先楫半导体HPM_SDK v<b class='flag-5'>1.8.0</b> <b class='flag-5'>发布</b>

    乐鑫 ESP32-C6 通过 Thread 1.4 操作性认证

    ThreadGroup授权实验室的严格测试中,展现了与最新Thread1.4协议的无缝兼容,充分展现了其在性能、安全和广泛设备操作性
    的头像 发表于 02-06 18:02 923次阅读
    乐鑫 ESP32-C6 通过 Thread 1.4 <b class='flag-5'>互</b><b class='flag-5'>操作性</b>认证

    PCIe 6.0 操作性PHY验证测试方案

    ™和 UCIe™等协议。CXL提供缓存一致互连,支持多台机器间的内存扩展,提供最低延迟和最高带宽。CXL和NVM Express®利用 PCIe 的物理层和简便的协议适应。UCIe作为
    的头像 发表于 01-02 08:43 1357次阅读
    PCIe 6.0 <b class='flag-5'>互</b><b class='flag-5'>操作性</b>PHY验证测试方案