Kotlin 语言参考文档 中文版 Help

Kotlin 各部分组件的稳定性

Kotlin 语言和它的工具集分成很多组件, 比如针对 JVM, JS 和 Native 平台的编译器, 标准库, 大量的相关工具, 等等. 这些组件很多已经正式发布为 稳定(Stable) 版本, 也就是说它们会以向后兼容的方式演化, 遵循 版本升级平滑便利保证语言的现代化 的原则.

遵循 反馈循环(Feedback Loop) 原则, 出于试用的目的, 我们会向开发者社区提前发布很多功能, 因此很多组件还没有发布为 稳定(Stable) 版本. 其中一些功能还处于非常早期的阶段, 另一些已经比较成熟了. 根据各个组件的演化速度不同, 以及使用它们给使用者带来的风险程度不同, 我们将这些功能标记为 实验性(Experimental), AlphaBeta 几种状态.

稳定性级别

下面简单介绍这些稳定性级别的含义:

实验性(Experimental) 代表 "请只在玩具项目中使用这些功能":

  • 我们只是在实验某些想法, 并且希望某些使用者试用, 并提供意见反馈. 如果这些想法不成功, 我们随时可能抛弃它.

Alpha 代表 "使用时风险自负, 将来升级时可能会出现问题":

  • 我们打算将这些想法变成产品, 但它还没有达到最终状态.

Beta 代表 "可以使用这些功能, 我们会尽力减少升级时的问题":

  • 功能已经基本完成, 现在使用者的意见反馈非常重要.

  • 但是, 它还没有 100% 完成, 因此还可能发生变化 (包括根据你的意见反馈产生的变化).

  • 为了确保升级顺利, 请注意废弃声明.

我们将 实验性(Experimental), AlphaBeta 统称为 未稳定(pre-stable) 级别.

稳定(Stable) 代表 "即使是在最保守的场景也可以使用这些功能":

请注意, 稳定性级别并不代表组件会在什么时间发布为稳定版本. 同样, 也不代表组件在正式发布之前会发生多大的变化. 稳定性级别只代表组件会以多快的速度发生变化, 以及将来的版本升级问题会给使用者带来多大的风险.

Kotlin 组件的 GitHub 徽章

GitHub 上的 Kotlin 组织 存放着很多 Kotlin 相关项目. 有些项目我们在全职投入开发, 其他则只是业余项目.

每个 Kotlin 项目都有 2 个 GitHub 徽章描述它的稳定性和支持状态:

  • 稳定性 状态. 表示每个项目的演化速度, 以及用户使用它时的风险程度. 稳定性状态与 Kotlin 语言特性和各组件的稳定性级别 完全相符:

    • Experimental stability level 表示 Experimental 状态

    • Alpha stability level 表示 Alpha 状态

    • Beta stability level 表示 Beta 状态

    • Stable stability level 表示 Stable 状态

  • 支持 状态. 表示我们对维护这个项目以及帮助使用者解决相关问题的保证程度. 对于 JetBrains 的所有产品, 支持级别是一致的. 详情请参见 JetBrains 的开源文档.

子组件的稳定性

一个稳定的组件也可以包含实验性的子组件, 比如:

  • 稳定的编译器可以包含实验性的功能特性;

  • 稳定的 API 可以包含实验性的类或函数;

  • 稳定的命令行工具可能包含实验性的参数选项.

我们确保会对这些还未 稳定 的子组件提供正确的文档. 我们也会尽可能警告使用者, 并要求使用者明确同意, 以避免无意中使用到这些未稳定发布的功能.

Kotlin 各部分组件当前的稳定性

Kotlin 编译器

组件

状态

进入这个状态的版本

备注

Kotlin/JVM

Stable

1.0.0

Kotlin/Native

Stable

1.9.0

Kotlin/JS

Stable

1.3.0

Kotlin/Wasm

Alpha

1.9.20

Analysis API

Stable

核心编译器插件

组件

状态

进入这个状态的版本

备注

All-open

Stable

1.3.0

No-arg

Stable

1.3.0

SAM-with-receiver

Stable

1.3.0

kapt

Stable

1.3.0

Lombok

Experimental

1.5.20

Power-assert

Experimental

2.0.0

Kotlin 库

组件

状态

进入这个状态的版本

备注

kotlin-stdlib (JVM)

Stable

1.0.0

kotlinx-coroutines

Stable

1.3.0

kotlinx-serialization

Stable

1.0.0

kotlin-reflect (JVM)

Beta

1.0.0

kotlinx-datetime

Alpha

0.2.0

kotlinx-io

Alpha

0.2.0

Kotlin Multiplatform

组件

状态

进入这个状态的版本

备注

Kotlin Multiplatform

Stable

1.9.20

Android Studio 的 Kotlin Multiplatform plugin

Beta

0.8.0

版本与语言本身的版本不同

Kotlin/Native

组件

状态

进入这个状态的版本

备注

Kotlin/Native Runtime

Stable

1.9.20

Kotlin/Native 与 C 和 Objective-C 的交互

Beta

1.3.0

klib 二进制文件

Stable

1.9.20

不包含 cinterop klib 库, 参见下文

cinterop klib 二进制文件

Beta

1.3.0

CocoaPods 集成

Stable

1.9.20

语言工具

组件

状态

进入这个状态的版本

备注

脚本的语法与语义

Alpha

1.2.0

脚本内嵌与扩展 API

Beta

1.5.0

脚本 的 IDE 支持

Beta

从 IntelliJ IDEA 2023.1 及更高版本开始可用

CLI 脚本

Alpha

1.2.0

语言功能与设计提案

关于语言功能与新的设计提案, 请参见 Kotlin 语言的功能特性与提案.

最终更新: 2024/11/17