Kotlin Multiplatform稳定版本发布:加速跨平台开发的新里程碑

Kotlin Multiplatform稳定版本发布:加速跨平台开发的新里程碑

引言

在最新的消息中,JetBrains团队宣布Kotlin Multiplatform(KMP)将于2023年10月稳定发布。这一消息对于广大开发者来说毫无疑问是一个令人振奋的消息。KMP的正式生产稳定性意味着开发者们可以更加自信地利用该框架进行跨平台开发,同时也标志着KMP在行业中迈出的坚实一步。

Kotlin Multiplatform是一种跨平台开发框架,凭借其出色的特性和灵活性,迅速获得了包括麦当劳、Netflix和飞利浦等多家公司的青睐。然而,在此之前,该框架一直处于beta阶段或早期生产使用阶段。虽然已经有许多公司成功地使用了这个框架,但直到现在,KMP都没有达到正式的生产稳定性。而现在,随着Kotlin版本1.9.20的发布,KMP终于迎来了稳定版本。

新特性和改进

KMP稳定版本带来了许多令人振奋的新特性和改进,其中最重要的是向后兼容的保证。这意味着开发者们可以放心地升级到最新版本,而无需担心与之前的稳定版本不兼容的问题。

此外,Kotlin 1.9.20还带来了一个重大的更新,即Gradle设置的简化。过去,配置KMP需要一系列繁琐的设置步骤,尤其是在为iOS开发创建子目标时。然而,有了默认的层次结构模板,使用Kotlin 1.9.20后,设置流程得到了显著简化。这极大地提高了开发者的效率,使他们能够更快速地构建和部署跨平台应用程序。

之前,在声明目标平台时,如果我们想创建一些子目标,比如在MacBook上开发面向iOS的应用程序,同时支持Intel和Silicon芯片,我们需要使用以下设置:

kt 复制代码
kotlin {
..
iosX64()
iosArm64()
iosSimulatorArm64()

sourceSets {
    ..
    val iosX64Main by getting
    val iosArm64Main by getting
    val iosSimulatorArm64Main by getting
    val iosMain by creating {
        dependsOn(commonMain)
        iosX64Main.dependsOn(this)
        iosArm64Main.dependsOn(this)
        iosSimulatorArm64Main.dependsOn(this)
    }
}
}

但是,有了默认的层次结构模板,使用Kotlin 1.9.20,设置可以简化为以下形式:

kt 复制代码
kotlin {
iosX64()
iosArm64()
iosSimulatorArm64()
// 不再需要显式声明iOSMain源集
}

展望未来

KMP稳定版本的发布为跨平台开发带来了更多的机遇和潜力。开发者们可以利用这个框架在不同的平台上共享代码,并通过一次开发实现多个平台的覆盖。这不仅降低了开发成本,还加快了产品的上市时间。

未来,我们可以期待KMP进一步发展和壮大。随着更多公司采用该框架并提供反馈,JetBrains团队将有更多的机会改进和优化KMP,以满足广大开发者的需求。

结论

Kotlin Multiplatform的稳定版本发布是跨平台开发领域的一个重要里程碑。它为开发者们提供了更可靠、更高效的工具,使他们能够更好地实现代码共享和跨平台部署。我们期待着在未来看到更多基于KMP开发的创新应用程序的出现,并相信这个框架将继续在行业中发挥重要作用。

参考

https://kotlinlang.org/docs/whatsnew1920.html#see-the-full-hierarchy-template

https://blog.jetbrains.com/kotlin/2023/11/kotlin-multiplatform-stable/

https://kotlinlang.org/docs/components-stability.html

相关推荐
ejjdhdjdjdjdjjsl1 天前
Winform初步认识
开发语言·javascript·ecmascript
nono牛1 天前
Android.bp 配置文件详解---gatekeeperd
android
六毛的毛1 天前
比较含退格的字符串
开发语言·python·leetcode
xingzhemengyou11 天前
Python GUI之tkinter-基础控件
开发语言·python
挖矿大亨1 天前
C++中深拷贝与浅拷贝的原理
开发语言·c++·算法
崇山峻岭之间1 天前
Matlab学习记录16
开发语言·学习·matlab
来来走走1 天前
Android开发(kotlin) 开发一个简单天气应用
android·kotlin
在屏幕前出油1 天前
Python面向对象编程基础——类、实例对象与内存空间
开发语言·python
C++业余爱好者1 天前
Hibernate 框架超详细说明
java·开发语言
wuk9981 天前
基于MATLAB/Simulink实现交流异步电动机矢量控制的仿真
开发语言·matlab