技术开发 频道

Kotlin新框架发布,据说是Swift转换神器

  【IT168 评论】前几日,Kotlin被官宣成为新的Android一级开发语言,程序员就炸了锅。相比于其它行业,程序员估计是最有效率的一拨人了,这才时隔几日,新的框架SwiftKotlin就应运而生。SwiftKotlin到底是何方神圣?简单来说,它可以帮助程序员将Swift代码转换为Kotlin。SwiftKotlin框架的命令行工具和Mac应用程序由 Angel Garcia Olloqui开发,并且已经获得MIT许可。

  根据项目描述,SwiftKotlin“将尽可能的将Swift代码转换为Kotlin代码。这其中包括字符串转换以及其他一些更加复杂的转换,如将guard语句转换为if语句,属性,内存管理等等。

Kotlin新框架发布,据说是Swift转换神器
▲图片来源于jaxenter

  在我们深入了解Olloqui选择Kotlin的原因之前,我们先来看一下它有哪些限制吧。

  Kotlin和Swift有相似之处,这是无容置喙的,但是它们之间还是有一些差异是无法互相进行转换的,而且这两种语言运行在不同的环境中,所以可以访问完全不同的框架和系统。

  因此,在这里需要声明的一点是SwiftKotlin并不是一个可以自动化将Swift转换为Kotlin目标代码的工具,相反,它是一个需要手动编辑的Kotlin翻译工具。

  我们举一个例子,向项目添加一个数组,它们是有不同的方法名:

Kotlin新框架发布,据说是Swift转换神器

  根据项目描述,SwiftKotlin不旨在将所有现有的方法和数据类型映射到Kotlin对应方案中,而是将语言本身进行翻译。 因此,“之后将需要手动编辑,特别是处理系统库时,开发人员检查输出是有意义且重要的。”

  为什么Kotlin和Swift是天作之合?

  “为什么会选择Kotlin?“这个问题是不是有点熟悉,好像前几天Kotlin在成为Android一级编程语言时,我们也曾这样发问。

  SwiftKotlin诞生,而不是SwiftJava、SwiftGo或者是其他Swift组合诞生,这是因为Swift语法更接近Java,相对Objective C上手容易,而Kotlin增加很多功能,同时保持和Java完整的互操作性,所以Kotlin和Swift是天作之合。

  如果您是Swift开发人员,您也会喜欢Kotlin。 它提供了最重要的Swift功能(扩展,泛型,lambdas等等),以及非常类似的语法。

  如果您是Java开发人员,Kotlin将会是更现代更安全的语言,Kotlin代码可以对应成为可读性更强,也更加紧凑的Java代码。

  根据Swift和Kotlin之间的相似之处,它们之间可以轻松转换,这也是我们今天提到的SwiftKotlin所具备的功能。

  如何使用SwiftKotlin?

  首先,SwiftKotlin带有2个可执行目标:

  SwiftKotlinCommandLine

  SwiftKotlinApp

  在使用XCode8 +构建它们之前,需要确保运行git submodule update。

  复制具有可执行权限的目录中的可执行文件。 通常,您可以使用:

  SwiftKotlin命令行工具:/ usr / local / bin /

  SwiftKotlin桌面应用程序:/Applications/

0
相关文章