Kotlin尝鲜

最近google官方宣布kotlin成为安卓官方开发语言,被称为安卓界的swift,很久没有码代码的我打开了AS尝尝鲜。

Kotlin是什么

Kotlin是一门静态类型、基于JVM的语言,是由JetBrains开发的,没错就是开发Android Studio的公司。


Kotlin的优势

  • 简洁性
    我们都知道Java一直都被吐槽说繁琐冗杂,而Kotlin应该就是上天派来拯救安卓开发者的吧。
    举个简单的例子,你们应该都会讨厌一个东西,那就是getter和setter,即使有插件可以自动填充,你也会觉得看到这些代码觉得很烦躁吧。
    Java中仅仅是3个变量的类就要写这么一大串
public class Data {
    private int id;
    private String account;
    private String password;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getAccount() {
        return account;
    }

    public void setAccount(String account) {
        this.account = account;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

而Kotlin只需要短短几行

class Data {
    var id: Int = 0
    var account: String? = null
    var password: String? = null
}

也可以通过构造函数赋值

class Data(var id: Int, var account: String?, var password: String?)

是不是有种相见恨晚的感觉

  • 空安全
    空指针几乎是大部分bug的原因所在,而Kotlin会帮我们极大的降低空指针的可能。一旦要求变量不能为空,那么空指针异常的可能性就没有了。
    举个简单的例子:
val anInt: Int = null // 错误
val anotherInt: Int? = null // 正确
  • 拓展类
    Java中的API都是比较简单的,很多时候我们要组合处理,于是产生了Utils类。我们只需要重写一个拓展方法,感觉就像Java给我们提供了这么一个方法,优点就是简化了调用过程。
  • 函数式支持
    Kotlin支持Lambda表达式,会让我们的程序看起来更加简洁明了。
  • 编译速度稍快
    Kotlin VS Java:编译速度大比拼,到底谁更快?
    这篇文章测试了Java和Kotlin的编译速度,当然在这方面Kotlin并不会有太大优势,但至少,它已经不会输给Java了。
  • 等等(其他的我也不了解了)

Kotlin试用与学习

划重点划重点

其实这篇中真正是我探索到的也就这么点东西了。
记录下我根据官方文档来试用Kotlin的经历。
就在我写下这篇文章不久前,AS似乎发布了3.0,已经支持了Kotlin的直接使用。如果你还在用2.x并且想试试的话,就跟着做就好了。

  • 首先安装Kotlin的插件
    File | Settings | Plugins | Install JetBrains plugin,然后搜索Kotlin点击install就好了
  • 转换一下Java代码
    使用Find Action方法(windows中是ctrl+shift+A),搜索convert java file to kotlin,将一个java文件转换为kotlin代码。
Kotlin尝鲜_第1张图片
转换前
Kotlin尝鲜_第2张图片
转换后
  • 然后开始编辑代码,AS会提示你configure
Kotlin尝鲜_第3张图片
  • 然后选择最新的版本配置
Kotlin尝鲜_第4张图片
  • 之后sync一下gradle和project就可以了
Kotlin尝鲜_第5张图片
  • 接下来你就可以愉快的开始写kotlin代码了
    刚开始学习,很多可能都不懂,有一个简单的学习方法是写好java文件然后转换为kotlin进行学习(ctrl+shift+alt+k),但是有时候你会发现转换之后会报错,因为kotlin和java的语法还是有些许出入,虽然从java转kotlin不会很难,但也不是那么容易上手的。

Kotlin语法怎么学

我也还不会啊。
推荐一份中文文档给大家
https://github.com/huanglizhuo/kotlin-in-chinese


结语

其实这篇毫无营养的文章,只是为了百步梯凑线上分享哈哈。


以上借鉴了很多文章,表示感谢:
http://blog.csdn.net/sergeycao/article/details/54984108
http://www.techug.com/post/kotlin-vs-java.html
http://www.codeceo.com/article/android-developer-know-kotlin.html
http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2016/0226/4000.html
http://www.infoq.com/cn/news/2015/06/Android-JVM-JetBrains-Kotlin
当然,最好的学习方法还是上kotlin官网看英文文档啦

你可能感兴趣的:(Kotlin尝鲜)