许多Android开发者在开发Android时会发现一个问题。目前的Android开发只支持Java6(语言本身从Java7开始进行了一些改进),所以我们只能用同一种语言进行Android开发,因此很影响我们的开发效率,同时也迫使我们不得不去编写各种各样的样板与脆弱的代码,但这样的代码对开发者来说,难以维护和阅读。但有一点值得我们借鉴,Android程序是运行在Java虚拟机之上的,因此从技术上来说,可以运行在JVM之上的一切都可用于开发Android应用。
所以,现在已经有很多可以生成JVM能够执行的字节码的语言,其中一些语言开始崭露头角并逐步流行起来,Kotlin就是其中的佼佼者。
Kotlin是一门运行在JVM之上的语言。它由Jetbrains创建,而Jetbrains则是诸多强大的工具(如知名的Java IDE IntelliJ IDEA)背后的公司。
Kotlin是一门非常简单的语言,其主要目标之一就是提供强大语言的同时又保持简单且精简的语法。其主要特性如下所示:
1.轻量级:这一点对于Android来说非常重要。项目所需要的库应该尽可能的小。Android对于方法数量有严格的限制,Kotlin只额外增加了大约6000个方法。
2.互操作:Kotlin可与Java语言无缝通信。这意味着我们可以在Kotlin代码中使用任何已有的Java库;因此,即便这门语言还很年 轻,但却已经可以使用成百上千的库了。除此之外,Kotlin代码还可以为Java代码所用,这意味着我们可以使用这两种语言来构建软件。你可以使用 Kotlin开发新特性,同时使用Java实现代码基的其他部分。
3.强类型:我们很少需要在代码中指定类型,因为编译器可以在绝大多数情况下推断出变量或是函数返回值的类型。这样就能获得两个好处:简洁与安全。
4.Null安全:Java最大的一个问题就是null。如果没有对变量或是参数进行null判断,那么程序当中就有可能抛出大量的 NullPointerException,然而在编码时这些又是难以检测到的。Kotlin使用了显式的null,这会强制我们在必要时进行null检查。
目前Kotlin的版本是1.0.0 Beta 3,不过正式版 很快就会发布。它完全可以用在生产当中,现在就已经有很多公司成功应用上了Kotlin。
我正在使用的Android Studio的版本是2.3.1 , 其他版本类似。
依次打开:Android > File > Setting > Plugins,然后选择『Browse repositories』, 在搜索框中搜索Kotlin,结果列表中的『Kotlin』插件,点击安装,安装完成之后,重启你的Android Studio, 安装Kotlin插件的步骤就算完成了。
空项目就可以,不多赘述。
安装完插件的Android Studio就已经可以开始使用Kotlin进行Android开发了,接下来,我们先来尝试它的翻译功能:Java -> Kotlin,可以把现有的java文件翻译成Kotlin文件。
进入MainActivity文件,在Code菜单下面点击:Convert Java File to Kotlin File。
点击转换,可以看到结果:
1.原本的Java文件如下:
package com.example.sea.hello; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } }
2.翻译成Kotlin之后的文件如下:
package com.example.sea.hello import android.support.v7.app.AppCompatActivity import android.os.Bundle class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } }
有些版本的Android已经自动配置好Kotlin所需的gradle文件,其他的版本,只需要打开MainActivity文件,再根据提示点击Configure即可完成配置。
到这里,Kotlin已经基本配置完毕了。接下来,感受来自Kotlin的开发盛宴吧。