前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Kotlin十周年:Kotlin 1.5稳定版发布——2021年第一个大版本更新有何亮点?

Kotlin十周年:Kotlin 1.5稳定版发布——2021年第一个大版本更新有何亮点?

作者头像
一个会写诗的程序员
发布2021-12-16 11:36:58
8020
发布2021-12-16 11:36:58
举报

Kotlin十周年:Kotlin 1.5稳定版发布——2021年第一个大版本更新有何亮点?

从2011年,JetBrains在 JVM 语言峰会上官宣了Kotlin 1.0 —— 一种用于 JVM 的新静态类型编程语言,到2021年,作为十周年首个大版本更新,Kotlin 发布了1.5版本。期待接下来的十年,Kotlin发展越来越好,给开发者们带来更多的福利,生态越来越繁荣,未来能有更多的开发者加入到Kotlin阵营中来!

Kotlin 1.5.0 稳定版已发布,此版本提供了稳定的语言特性,例如 JVM records、密封接口 (sealed interface)、内联类 (inline class),并引入了新的默认 JVM IR 编译器。据介绍,新的编译器与 Kotlin/Native 和 Kotlin/JS 编译器共享统一的管道和业务逻辑,因此 Kotlin 团队可同时为所有平台实现大多数功能、优化和错误修复。新的编译器还将允许开发者添加自定义处理和转换,这些处理和转换将自动在所有平台上运行。

Kotlin 1.5 主要变化

  1. 新增稳定的语言特性 - JVM records、密封接口 (sealed interface)、内联类 (inline class)
  2. 标准和测试库改进 - 稳定的无符号整数类型、Extensions forJava.nio.file.Path,以及针对 String、Char 和 Duration API 的改进
  3. Kotlin/JVM 改进 - 新的默认 JVM IR 编译器
  4. Kotlin/Native 改进 - 针对 Linux 和 iOS 应用程序的更快的调试编译
  5. Kotlin/JS 的改进 - 将更多 JS 库迁移到新的 Kotlin/JS IR 编译器

Kotlin 1.5 主要亮点包括:

稳定的语言特性:JVM records、密封接口 ( sealed interface )、内联类 ( inline class )

标准和测试库改进:稳定的无符号整数类型、E xtensions for java.nio.file.Path ,以及针对 String、Char 和 Duration API 的改进

Kotlin/JVM 改进:新的默认 JVM IR 编译器

Kotlin/Native 改进:针对 Linux 和 iOS 应用程序的更快的调试编译

Kotlin/JS 的改进:将更多 JS 库迁移到新的 Kotlin/JS IR 编译器

其中,新的 JVM IR 编译器使 JetBrains 能够更快地为其各种实施方案构建新的语言特性,其中包括用于构建 iOS 和 Windows 应用程序的 Kotlin native(Kotlin/Native)、用于构建 Web 应用程序的 Kotlin for JavaScript(Kotlin/JS)以及用于 Java 平台的 Kotlin for JVM(Kotlin/JVM)。

来自 JetBrains 的 Ekaterina Volodko 在一篇博客文章中说:“新的编译器与 Kotlin/Native 和 Kotlin/JS IR 编译器共享了统一的管道和业务逻辑,这使得我们可以同时为所有平台实现大多数特性、优化和错误修复。”

“它还将允许你添加自定义处理和转换,并且可以在所有平台上自动工作。”

JetBrains 表示,已经有超过 25000 名开发者在 IntelliJ IDEA 中试用了新的 JVM IR 编译器。

Kotlin 1.5.0 还提供了对 JVM 记录的支持,以确保作为不可变数据的透明载体的记录类 与 Java 特性的互操作性。记录类在 JDK 16 中被确定下来,并且 JDK 16 在 3 月达到了普遍可用性。

标准库和测试库也有所改进。对于无符号整数类型以及范围、级数和函数,标准库提供了新的稳定性 API。

使用 IntelliJ IDEA 和 Android Studio 的开发者应该会看到一个通知,提醒他们将 Kotlin 将自动更新到 1.5.0。用户也可以手动更新。

Kotlin/Native 获得了对 linuxX64 和 iosArm64 目标的调试模式下的编译器缓存的支持。它还停用了内置的内存泄漏检查器,以避免可能导致应用程序崩溃的问题。

“在启用了编译器缓存后,除第一个外,大多数调试编译都会更快地完成。测量结果显示,在我们的测试项目中,速度提高了大约 200%,”JetBrains 说。

获得谷歌力推的 Kotlin

自从 2019 年对外宣布 Kotlin 编程语言是 Android 应用程序开发人员的首选语言,谷歌就一直在对 Kotlin 进行多方位的支持,不仅推出了 Kotlin 免费在线课程,而且开源了 gRPC-Kotlin/JVM,开发者可以在 Kotlin 项目中更方便地使用 gRPC,以更简单的方式构建可靠的网络连接服务。

2021 年,谷歌推出了使用 Kotlin 语言开发 Android 应用的全新课程,由浅入深、循序渐进地帮助用户学习 Android 应用开发。这套课程取代了 2018 年发布的课程,同时课程内容也结合了 Android 平台的变化,例如 Android Jetpack 库的发布等。

2020 年,谷歌开源了 gRPC-Kotlin/JVM。gRPC 是一个开源的高性能、通用 RPC 框架,支持多种编程语言。gRPC 基于 Protocol Buffers,面向移动和基于 HTTP/2 标准设计,带来诸如双向流、流控、头部压缩、单 TCP 连接上的多复用请求等特性。gRPC 与 Kotlin 结合之后,从移动应用程序到云端微服务,开发者都可以构建。gRPC-Kotlin/JVM 构建在 gRPC 的 Java API 之上,提供了对 Kotlin 友好的 gRPC 类,支持 Kotlin 协程。

参考资料

https://www.tectalk.co/kotlin-programming-language-heres-whats-inside-the-first-big-release-of-this-year/

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021/8/6 下午,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档