Kotlin Multiplatform Mobile的iOS共享模块有多原生?



Kotlin Multiplatform Mobile的共享模块是如何在iOS平台上实现的?它是被翻译成Swift代码还是它是如何工作的?与Swift代码相比,它的性能如何?

"Kotlin/Native是一种将Kotlin代码编译为本机二进制文件的技术,可以在没有虚拟机的情况下运行。Kotlin/Native包含一个基于llvm的Kotlin编译器后端和Kotlin标准库的本地实现。

当你为iOS编译kotlin时,它通过绑定使用标准的iOS库,所以这里的性能完全是原生的。例如,如果不仅执行系统调用,还执行一些计算:kotlin本机是使用llvm(而不是编译为swift)和swift编译的,这意味着将涉及相同的优化。此外,当与ObjC/Swift交互时,kotlin为包含引用计数器的对象创建包装器(与ObjC/Swift ARC运行时相同),这也有助于更本机的交互。

所以,是的,在某些情况下它可以更快或更慢,但它是非常原生的。

相关内容

  • 没有找到相关文章

最新更新