NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

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

评论

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

IntelliJ IDEA远程调试Elasticsearch6.1.2

程序员欣宸

elasticsearch 9月月更

redis数据类型以及它们的底层实现数据结构

想要飞的猪

Ansible如何使用lookup插件模板化外部数据

山河已无恙

ansible 9月月更

使用 Angular Transfer State 的一个具体例子

Jerry Wang

typescript 前端开发 angular Web Component 9月月更

学人工智能难吗?怎么用它赚到钱?

felix

人工智能 赚钱 副业赚钱 算法

【精通内核】Linux内核中断控制原理源码解析

小明Java问道之路

cpu 寄存器 Linux内核 中断 9月月更

这个中秋,国潮元宇宙的A新玩法是……?

文心大模型

全球新兴市场移动应用报告

易观分析

移动应用

计算机网络——OSI参考模型

StackOverflow

编程 计算机网络 9月月更

图解Kafka的服务端的网络通信模型

石臻臻的杂货铺

kafka Kafka实战 9月月更

力扣429 - N叉树的层序遍历【BFS+DFS】

Fire_Shield

LeetCode DFS BFS 9月月更

FreeRTOS记录(五、FreeRTOS任务通知)

矜辰所致

FreeRTOS 9月月更 任务通知

Nodejs安装及环境配置

nodejs NVM 9月月更

HTML笔记1

喜羊羊

9月月更

HTML笔记2

喜羊羊

9月月更

LeetCode-1. 两数之和(java)

bug菌

9月日更 Leet Code 9月月更

LeetCode-861. 翻转矩阵后的得分(Java)

bug菌

9月日更 9月月更

力扣260 - 只出现一次的数字||| 【哈希映射、异或位运算+分治思想】

Fire_Shield

位运算 哈希表 9月月更

Web3.0 会长什么样?

掘金安东尼

前端 Web3.0 9月月更

Java进阶(十三)servlet监听器

No Silver Bullet

Java Servlet 9月月更

HTML笔记3

喜羊羊

9月月更

高性能使用索引

急需上岸的小谢

9月月更

InnoSetup制作补丁包替换文件操作

中国好公民st

c++ qt 9月月更

数据治理(十二):Ranger2.1.0源码编译

Lansonli

数据治理 9月月更

【JS】防抖与节流---在定义时返回的是回调函数

Sam9029

JavaScript 前端 防抖节流 9月月更

C++ 学习 ------cmath 头文件的源码学习 03

桑榆

c++ 源码阅读 9月月更

跟我以前学mybatis

楠羽

mybatis 笔记 9月月更

库调多了,都忘了最基础的概念 《锁与线程2终结篇》

知识浅谈

线程 9月月更

「趣学前端」前端设计模式学习与应用

叶一一

前端 设计模式 9月月更

「工作小记」后台系统代码简洁之路-详情页设计

叶一一

前端 设计模式 React Hooks 9月月更

创立一年就估值5亿美金,这个项目是怎么做到的?

One Block Community

区块链 创业 融资 defi

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