概要:为了解决过去两年长期困扰众多 Kotlin 开发者的命名不一致和缩写混乱问题,我们将弃用“Kotlin Multiplatform Mobile”(KMM) 产品名称。
从现在开始,无论目标组合如何,“Kotlin Multiplatform”(KMP) 都是跨平台共享代码的 Kotlin 技术的首选术语。
Kotlin Multiplatform 起源
Kotlin Multiplatform 在KotlinConf 2017上以“Kotlin Multiplatform Projects”名称发布,最初支持 JVM、Native 和 JS 目标。 我们很快就吸引了一批早期采用者,他们主要使用缩写“KMP”,较少使用“MPP”。
2020 年前,这项技术都处于实验阶段,团队根据早期采用者的反馈进行调整。
2020 年,我们将重点转向 iOS 与 Android 之间的代码共享,这是最常见的用例。我们希望吸引更多移动开发者使用 Kotlin Multiplatform,利用他们的反馈增强技术,准备进行更多改进,包括更好地支持其他目标。
为了反映这一重点,我们将 Kotlin Multiplatform 中 iOS 与 Android 之间代码共享相关的所有内容拆分为一个名为“Kotlin Multiplatform Mobile”的独立产品,为其引入缩写 KMM,并宣布了Alpha 版本。
同时,我们还发布了适用于 Android Studio 的 Kotlin Multiplatform Mobile 插件。
问题
虽然新 Kotlin Multiplatform Mobile 名称的 Alpha 版本引起了关注,但它也带来了混乱,因为开发者不确定如何称呼在 iOS 与 Android 之外共享代码的技术。
某些现有社区内容和库的名称中也包含“KMP”,进一步加剧了这种混乱,导致生态系统具有多个名称 – Kotlin Multiplatform 和 Kotlin Multiplatform Mobile – 以及缩写 KMP、KMM 和 MPP。这使内容更难查找,还让人们产生 Kotlin Multiplatform 主要用于移动代码共享的误解。
解决方案
为了解决过去两年长期困扰众多 Kotlin 开发者的命名不一致和缩写混乱问题,我们将弃用“Kotlin Multiplatform Mobile”产品名称。
从现在开始,无论平台组合如何,“Kotlin Multiplatform”(KMP) 都是跨平台共享代码的 Kotlin 技术的首选术语。
KMP 非常适合跨多个平台共享代码,而不仅仅是 iOS 和 Android。利用它,您还能够与桌面和服务器端共享代码。
此外,我们正在积极开发 Kotlin/Wasm,旨在促进使用 Kotlin Multiplatform 的现代 Web 开发。
配合Compose Multiplatform(现在支持 Android、桌面、iOS (Alpha) 和 Web(实验性))使用时,您将拥有更多自由,并且可以完全在 Kotlin 中选择共享 100% 的代码库。
JetBrains 的目标是为 Kotlin Multiplatform 和 Compose Multiplatform 提供进一步改进,使这一组合成为平台间共享代码的终极选择。
共同向前迈进
我们要感谢 Kotlin Multiplatform 生态系统中的每一位内容创作者和库作者。KMP 的发展和成长离不开您为构建内容和库所做的贡献。
我们建议您在现有和未来的内容和库中采用“Kotlin Multiplatform”(KMP) 这个名称。 统一术语将简化新用户的入门流程,并帮助 KMP 进一步发展。 我们重视您的付出,感谢您的持续贡献。