Kotlin语言背景(Kotlin/Swift)
Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,被称之为 Android 世界的Swift,由 JetBrains 设计开发并开源。Kotlin 可以编译成Java字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在Google I/O 2017中,Google 宣布 Kotlin 成为 Android 官方开发语言。
虽然推出时标明为开发Android的新语言,但是随着发展Kotlin逐渐拓宽领域,目前已经支持了服务器端,Android端,Javascript和原生端,原生包含范围较广,为最近推出的Kotlin/Native,
Kotlin/Native 支持以下平台:
iOS(arm32、 arm64、 模拟器 x86_64)
MacOS(x86_64)
Android(arm32、arm64)
Windows(mingw x86_64)
Linux(x86_64、 arm32、 MIPS、 MIPS 小端次序)
WebAssembly(wasm32)
可以看出,Kotlin的范围覆盖很广,当然我这里仅对Kotlin/Swift的集成方向做学习探索,因为毕竟是iOS开发。
Kotlin目前官网给出的集成到iOS开发的方式就是将应用的业务逻辑抽离,原生界面就用Swift来构建,这样业务逻辑可以通过Kotlin/Native 编译成Framework的方式引入到原生工程里,安卓会由Kotlin编译成jar包引入,这样减少一定的工作,还能保持业务逻辑的统一性。
简单分析下这样的优缺点,就目前而言,优点是业务逻辑抽离,两端同时对业务逻辑进行同时维护,可以减少两端分别实现的工作量,保证应用的业务逻辑高度统一,无论是网络请求,数据持久化,都可以做到统一处理。接下来就是缺点,毕竟Kotlin也是刚刚支持,一些两端差异化的东西,即使是封装到这样的业务逻辑里,还是要在进行两端处理,就显示出了一些局限性,也增加了一些维护的成本,而Kotlin的持续迭代,可能也会有一些成本。
不过也不失为是一种区别于混合开发等跨平台技术的一种思路,还是值得一探的。
希望你通过本文能对Kotlin/Swift 开发能有简单了解,现在Kotlin Swift 火热,是时候投入到新语言的怀抱了。
接下来可能先写关于Kotlin 在Mac环境下的环境变量配置问题。
参考链接
https://www.kotlincn.net/docs/reference/ Kotlin语言中文站