News

2021 年秋 Kotlin 路线图的七大亮点

Read this post in other languages:

Kotlin 的愿景将想法转化为代码。 我们力求让实现想法的旅途畅通无阻,让 Kotlin 的阅读和编写变得轻松有趣。 为此,我们需要一个复杂的工程系统,包含多个部分:语言语法、编译器前端和后端、IDE、构建工具、库和所有其他工具。 为了维护和开发这些组件,我们组建了一支大约 110 人的团队。 所有成员都在同时处理不同的项目和任务。

如果您想了解所有项目的最新进展,可以查看 Kotlin 公开路线图。 我们刚刚更新了路线图,纳入了我们对 Kotlin 1.7.0 及更高版本的计划! 如果只想快速了解最新进展,您可以在这篇博文中找到当前工作的七个最显著的亮点。

在文章之外,我们还准备了包含这些亮点的视频!

1. K2 编译器前端正逐步迈向 Alpha

编译器是 Kotlin 的核心。 它为创建应用程序各个方面的整个语言提供动力,包括 IDE 响应速度、构建速度、二进制文件大小和效率。 这就是我们积极推进 Kotlin 编译器的原因,特别是新 K2 编译器的构建。我们的团队目前专注于将 K2 编译器前端带入 Alpha 阶段。 前端是负责代码分析和中间表示转换(后续将由后端处理)的编译器部分。 新的编译器已经表现出不错的效果! 它能够编译大型 JVM 生产项目,例如 Kotlin 本身和 IntelliJ IDEA。 对于这些项目,编译速度平均提升两倍。我们将编译更多项目并修正错误和性能问题,进一步提升其稳定性。 计划在 2022 年春季提供 K2/JVM 编译器公开预览。 Alpha 版本将提供新插件基础架构的预览,支持社区构建更多工具。我们还推进了对非 JVM 后端的支持,让 K2 编译器可用于构建多平台项目。探索路线图工单:

2. 专注于 KMM 的稳定性和稳健性

KMM 将于 2022 年春季进入 Beta 阶段! 这意味着我们现在专注于查找和修正会导致用户工作流中断的问题。 这包括代码高亮显示、导航与补全、调试和构建工具稳定性。我们还将继续改进并发体验。 我们刚刚发布了实验性 Kotlin/Native 内存管理器。 它消除了 JVM 和 Native 平台之间的差异,让您能够为 iOS 和 Android 平台轻松编写通用并发代码。 后续计划包括提高稳定性和性能,使未来到新内存管理器的迁移更简单。探索路线图工单:

Kotlin 动作很快!查看我们的公开路线图,全面了解我们目前关注的所有功能!

3. 命名空间研究和原型设计

在 Kotlin 中,只有当类声明了一个伴生对象时,该类才能获得扩展。 这会带来许多不良后果,例如许多第三方库类会无法扩展以及在声明私有静态类成员时效率不足。我们计划在引入命名空间的新概念的基础上构建一个解决方案原型:一种没有实例的临时对象,每个类都会自动拥有。 命名空间成员自然会被编译为 JVM 上的静态成员。 这会使静态帮助程序在源中归为一组,并消除所有对象开销。 这将显著提高 Kotlin 与 Java 静态方法的互操作性,并实现对任意 Java 类型的扩展。 这应该会有助于 Kotlin/JVM 的进一步采用。探索路线图工单:

4. Kover,Kotlin 测试覆盖率工具

我们相信,以特定于 Kotlin 的强劲解决方案收集 Kotlin 应用程序和库的测试覆盖率对于生态系统发展至关重要。 因此,我们推出了 Gradle 插件 Kover,用于衡量 Kotlin 代码的代码覆盖率,支持所有语言结构,包括内联函数。我们的长期计划包括用于验证规则的 DSL、JaCoCo 用法稳定性、高级筛选和高级 Android 支持。 我们计划根据反馈开发 Kover,所以请在试用后与我们分享您的反馈!探索路线图工单:

5. Dokka,用于生成 lib 文档的改良版工具

我们为库开发者开发的另一个工具是文档生成工具 Dokka。 我们正在将其提升到 1.6.0 的 Beta 版,重点关注实用性以及与 Kotlin 官方文档的设计统一。 我们希望开发者在使用 Kotlin 文档时拥有无缝体验,无论是官方语言参考还是库文档。 使用统一的视觉风格和结构有助于降低上下文切换的成本。下一步是将 Dokka 提升到只有一种稳定输出格式 (HTML) 的稳定状态。 其他输出格式(如 GitHub Markdown 或 Jekyll),面向插件开发者的 API 以及对 Java 的全面支持将保持 Alpha 版。 为了推动进度,我们将进行一系列访谈并听取您的反馈!探索路线图工单:

提示:想参加用户体验研究吗?申请

6. 改进 Kotlin IDE 插件版本采用

将 Kotlin IDE 插件移至 IntelliJ 平台开发基础架构是一项复杂的工程任务,这将让我们能够与 IntelliJ 平台一起为新工具功能提供支持。 不过,这里也有一些缺点。 例如,如果您是 EAP 用户,您可能已经发现 IntelliJ IDEA EAP 版本不支持即将发布的 Kotlin 版本的预览版。 我们计划改进内部基础架构来解决 Kotlin IDE 插件版本采用的此类相关问题。探索路线图工单:

7. Playground 改进

过去,您必须随身携带笔记本电脑才能随时展示全新的 Kotlin 功能。 为了应对这种情况以及学习语言、原型设计和知识分享等其他情况,我们推出了 Kotlin Playground。 在 Kotlin Playground 收获热烈反响后,我们希望提供更多功能!如果您是新用户,我们计划通过更多示例和提示简化用户体验。 如果您是高级用户,我们希望为您提供在不同设备间同步进度、打开多个选项卡和导出文件之类的功能。 Kotlin Playground 还将支持移动设备,让您在没有笔记本电脑时也能应对自如!探索路线图工单:

——–社区是 Kotlin 的根基。 我们希望根据您的反馈和想法制定计划,因此,请不要犹豫,随时通过 YouTrack、Slack 或其他渠道与我们分享。我们将继续在博客和 YouTube 频道中发布未来的 Kotlin 计划,请您订阅并持续关注!

了解详情

本文英文原作者:

Sue

Egor Tolstoy

image description

Discover more