写点什么

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:004921

评论

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

「开源人的福音」一键部署Java构件到Sonatype

Jianmu

后端 持续集成 开源项目 部署 Java构件

Docker实践经验(二)镜像的构建、镜像仓库、压缩、导入

看,未来

图解 DevOps

看,未来

国产ETL数据仓库调度平台TASKCTL对于Kettle作业类型的转换使用

敏捷调度TASKCTL

DevOps 数据仓库 kettle ETL 自动化运维

不改一行代码,将微信小程序生成商用App可行吗?

Speedoooo

微信小程序 APP开发 小程序转app 用户留存

K8s 网关选型初判:Nginx 还是 Envoy?

阿里巴巴云原生

阿里云 容器 微服务 云原生 网关

面向高校 | “云原生技术应用与实践”示范课程项目开放申报

阿里巴巴云原生

阿里云 云原生 云原生课程

Docker 实践经验(一)简介、安装与实操

看,未来

云原生

Docker 实践经验(三):Docker 容器数据卷

看,未来

一次软件的可靠性测试实践

PingCode研发中心

软件测试 开发 PingCode 软件可靠性

哈希Hash竞猜游戏系统规则开发

薇電13242772558

区块链 哈希值

OneFlow最新版本登陆矩池云,快来体验吧

OneFlow

CopyOnWriteArrayList 源码分析-删除

zarmnosaj

5月月更

Docker 实践经验(六):Docker 网络

看,未来

云原生

“Docker 实践经验” 系列导航

看,未来

云原生

Vue3 Typescript + Axios 全栈开发教程:手把手教你写「待办清单」APP

蒋川

typescript 低代码 Vue3 axios 全栈开发

A8hash哈希竞猜娱乐游戏开发(源码搭建)

开发微hkkf5566

11年程序员给本科、研究生应届生以及准备从事后台开发同学的建议,学习进阶之路

C++后台开发

后台开发 社招 应届生 Linux服务器开发 校招

Docker实践经验(四)docker 上部署 mysql8 主从复制

看,未来

Spring Boot系列(一)

DC.夜猫

Java Spring Boot Spring Boot 2

Spring之 @Component和@ComponentScan注解用法介绍和注意事项

echoes

架构实战营 - 第 6 期 模块七课后作业

乐邦

「架构实战营」

自动驾驶等级家喻户晓,小微企业宽带等级你知道吗?

脑极体

战码先锋直播预告丨参与ArkUI,共建OpenHarmony繁荣生态

OpenHarmony开发者

Open Harmony

docker之搭建zookeeper和kafka集群

echoes

最好用的 6 款 Vue 实时消息提示通知(Message/Notification)组件推荐与测评

蒋川

JavaScript Vue 组件 低代码平台 消息提示通知

开箱即用!Linux 内核首个原生支持,让你的容器体验飞起来!| 龙蜥技术

OpenAnolis小助手

Linux 容器化 内核 高性能存储 龙蜥技术

存储厂商旌存半导体加入龙蜥社区

OpenAnolis小助手

芯片 龙蜥社区 CLA 旌存半导体

未来已来:云原生时代(一)云计算如何一步步走来?

看,未来

未来已来:云原生时代(二)云计算发展现状调研

看,未来

云原生

Docker 实践经验(五)docker上部署 redis 三主三从集群

看,未来

云原生

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