Kotlin 路线图
最后修改时间 | 2020 年 10 月 |
预计时效 | 6 个月,到 2021 年 3 月 |
下次更新时间 | 2021 年 1 月 |
欢迎来看 Kotlin 路线图!一窥 Kotlin 团队的工作重点。
关于路线图有以下几点注意事项:
- 描述了团队正在投入的主要领域。
- 这不是团队正在做的所有事情的详尽清单,只列了重要的项目。
- 这里没有在指定版本中交付指定特性或修复的承诺。
- 列出了一些被推迟并且团队在不久的将来不会关注的事情。
- 没有什么是一成不变的,我们会随着进展调整事项的优先级,并且大约每三个月更新一次路线图。
如果对路线图或者其中某些点有任何问题或反馈,请随时发布到 YouTrack tickets 或者 Kotlin Slack(获取邀请)的 #kotlin-roadmap 频道中。
关键优先事项
这个路线图的目标是给出一个大的图景。这里列出了主要优先事项——我们投入精力最多的领域:
- 快速流转:让“变更-测试-调试”周期非常快。
- 新版编译器:重写 Kotlin 编译器,针对速度、并行性与统一性进行优化。晚些还会研究插件化。
- 快速流畅的 IDE:改善 Kotlin IDE 的稳定性与性能。
- Kotlin 用于 JVM 服务器端开发:在整个 Kotlin 生态系统中扩展对服务器端使用场景的支持。
- Kotlin 多平台移动端:改善在移动平台上共享代码的用户体验与特性集。
以子系统划分的 Kotlin 路线图
下表介绍了我们正在从事的重大项目。
子系统 | 当前聚焦 | 推迟后续 |
---|
语言 | | |
编译器核心 | | |
Kotlin/JVM | | |
Kotlin/JS | Make the new JS IR backend stable (KT-42289) Improve Dukat support (KT-42290) Maintain the old JS backend by fixing critical bugs (KT-42291)
| |
Kotlin/WASM | | Note: Wasm support in Kotlin/Native (through LLVM) will be deprecated and removed |
Kotlin/Native | Provide binary compatibility between incremental releases (KT-42293) Improve compilation time (KT-42294) Runtime performance: improve object allocation times (KT-42295) Prototype a new garbage collector (KT-42296) Improve exporting Kotlin code to Objective-C (KT-42297)
| |
Kotlin 多平台 | KMM plugin: Fix major bugs (KT-42299) KMM plugin: Run common tests on Android devices (KT-42298) Improve dependency management for iOS (KT-42301) Improve Gradle & Compiler error messages (KT-42303)
| |
IDE | Improve IDE performance (KT-42304) Improve cross-language support in the Inline Method and Change Signature refactorings (KT-42306) Prototype IDE plugin with the new compiler frontend (KT-42307) Move the Kotlin plugin to the IntelliJ platform development infrastructure (KT-42308)
| Note: Kotlin support for VSCode or other IDEs is not on the roadmap for the Kotlin team. Community initiatives in this respect are welcome. |
构建工具 | Improve incremental compilation performance in Gradle (KT-42309) Support the Gradle configuration cache (KT-42310) Decrease time for opening Gradle projects (KT-42311)
| |
库 | Support java.nio.Path extension in the standard library (KT-42436) Make multiplatform kotlin.text API locale-agnostic by default (KT-42437) Improve usability of multi-threaded coroutines library for Kotlin/Native (KT-42314) Improve kotlinx-datetime library (KT-42315) Improve kotlinx-serialization (release v1.1) (KT-42316) Improve kotlinx-coroutines (release v1.4) (KT-42317)
| |
Ktor | Ktor 路线图 | |