写点什么

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

  • 2021-05-14
  • 本文字数:1606 字

    阅读完需:约 5 分钟

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

开发工具制造商 JetBrain 发布了 Kotlin1.5.0 稳定版,它是“2021 年的第一个大版本”。此版本提供了稳定的语言特性,例如 JVM records、密封接口 (sealed interface)、内联类 (inline class),并引入了新的默认 JVM IR 编译器 。

Kotlin 1.5.0:2021 年第一个大版本


与 Java 兼容的 Kotlin 被谷歌认可为用于开发 Android 应用程序的官方编程语言。


Kotlin 是在 GitHub 上公开开发的,主要由 JetBrains(流行的 IDE IntelliJ IDEA 的制造商)开发,但谷歌也有贡献。IntelliJ IDEA 是谷歌 Android Studio IDE 的基础,用于构建 Android 应用程序。


作为 2021 年首个大版本更新,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-05-14 08:004969

评论

发布
暂无评论
发现更多内容

第13期 | GPTSecurity周报

云起无垠

国内有哪些做的比较好的云教室厂商?

青椒云云电脑

云教室 云教室厂商 云教室解决方案

SQLSmith: Databend 如何利用随机化测试检测 Bug

Databend

深度解读MediaBox SDKs如何实现技术架构升级

阿里云CloudImagine

云计算 视频云

为什么C4D能成为电商设计的王者?

Finovy Cloud

C4D 电商设计

腾讯Ckafka队列使用测评

查拉图斯特拉说

kafka 消息中间件

Kafka 在分布式系统中的 7 大应用场景

越长大越悲伤

Java kafka

区块链DAPP开发技术方案,开启你的区块链时代

V\TG【ch3nguang】

PostgreSQL基于Patroni方案的高可用启动流程分析

谐云

3DCAT+东风日产:共建线上个性化订车实时云渲染方案

3DCAT实时渲染

汽车虚拟仿真 汽车3D可视化

app游戏定制开发【 小游戏定制开发】

V\TG【ch3nguang】

Redis管道技术瞬间提升系统性能,速度翻倍!

高端章鱼哥

redis 管道技术

Dapp开发,让你掌握区块链技术-dapp开发团队

V\TG【ch3nguang】

一招教会跨国企业如何解决跨境数据传输的丢包和延迟问题

镭速

跨境数据传输

跨语言高性能 RPC 框架 Focus 架构解析

dinstone

RPC 高性能 跨语言 focus

推送内容有误怎么办?MobPush撤回/取消推送为您排忧解难

MobTech袤博科技

智能推送

数智化推送助力用户精准分层,MobPush是如何实现用户价值变现的

MobTech袤博科技

智能推送

云教室如何部署?云教室使用教程

青椒云云电脑

云教室 云教室厂商

如何选择向量数据库|Weaviate Cloud v.s. Zilliz Cloud

Zilliz

非结构化数据 Zilliz 向量数据库 zillizcloud

教育培训行业APP软件定制开发

V\TG【ch3nguang】

APP移动出海必备神器,MobPush提供海外消息智能推送一站式解决方案

MobTech袤博科技

智能推送

免费活动-11月4日敏捷武林上海站 | Scrum.org CEO 亲临现场

顿顿顿

Scrum 敏捷开发 敏捷项目管理 敏捷活动 scrum活动

Linux ls命令:查看目录下文件

芯动大师

​  iOS自动混淆测试处理笔记

雪奈椰子

LLM 大语言模型应用的分段策略

Tiger Wang

LLM 大语言模型 langchain

博睿数据亮相GOPS全球运维大会上海站!

博睿数据

Kubernetes跨StorageClass迁移,切换Rainbond默认SC

北京好雨科技有限公司

云原生 #Kubernetes# 企业号10月PK榜

产研团队必看!3款在线白板工具助你轻松改善工作!

彭宏豪95

产品经理 科技 产品研发 在线白板 效率软件

StarRocks 荣获 InfoWorld 2023 年最佳开源软件

StarRocks

企业如何安全跨国传输30T文件数据

镭速

跨国数据传输 跨境数据传输

Kotlin 1.5 稳定版发布,2021年第一个大版本更新有何亮点?_架构_TecTalk_InfoQ精选文章