学习Kotlin(一)为什么使用Kotlin

 

推荐阅读:
学习Kotlin(一)为什么使用Kotlin
学习Kotlin(二)基本语法
学习Kotlin(三)类和接口
学习Kotlin(四)对象与泛型
学习Kotlin(五)函数与Lambda表达式
学习Kotlin(六)扩展与委托
学习Kotlin(七)反射和注解
学习Kotlin(八)其他技术
Kotlin学习资料总汇

 

目录

1.什么是Kotlin
2.为什么要选择Kotlin
3.如何使用Kotlin来开发Android
4.与Java的互操作性


0.我认为好用的地方

便于封装:接口的默认方法,免findViewById等

便于调用:扩展函数,when表达式,Lambda表达式等

空安全: ?.  ?:

1.什么是Kotlin

谷歌在2017年中举行的I/O开发者大会上宣布,将Kotlin语言作为安卓开发的一级编程语言。Kotlin由JetBrains公司开发,与Java 100%互通,并具备诸多Java尚不支持的新特性。JetBrains在2010年首次推出Kotlin编程语言,并在次年将之开源。Android Studio3.0后的版本会提供对Kotlin的支持。


2.为什么要选择Kotlin

 

上图来自Kotlin的官网,列举了4个词:

 

  • 简洁举个例子,在AndroidStudio里分别用Kotlin和Java创建下图的模板
  • 可以看到,Kotlin一共用了84行,而Java用了101行。由此可得,Kotlin比Java代码量更少,更简洁。如果这个例子不够说服力的话,再举一个。在开发中我们经常用到的实体类,用Java写的话是这样的
class User {
    private String name;

    public Person(String name) {
        this.name = name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void getName() {
        return name;
    }
}

而用Kotlin写是这样的

data class User(var name: String)

没错就是这么简单!

  • 安全Kotlin是空安全的,在编译时期就处理了可能会产生空指针的情况,避免了执行代码时出现空指针异常。举个例子:如果用Java中定义一个String可以这样写
String str;//默认为null

如果我们没有给这个str赋值时,可能在其他操作中出现空指针异常。如果用Kotlin这样定义一个String,结果如下图

编译不通过,除非我们这样写

 

var str: String? = null//如果str为空,则等于null

这样编译才能通过。虽然都为null,但是Kotlin会检查一遍可能产生空指针的地方,能够排除大量的空指针异常。

  • 互操作性Kotlin与 Java100% 可互操作,Kotlin的项目可以使用所有的用Java写的代码和库,也可以在一个项目中使用Kotlin和Java两种语言混合编程。

  • 工具有好Kotlin和AndroidStudio都是出自JetBrains,工具自然少不了对语言的支持。


3.如何使用Kotlin来开发Android

  • 如果你的AndroidStudio版本是3.0之前:

(1).通过 File | Settings | Plugins | Install JetBrains plugin… 搜索并安装 Kotlin 插件。

 

(2).在根目录的build.gradle中加入

buildscript {
    ext.kotlin_version = '1.2.10'

    repositories {
        mavenCentral()
    }

    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

(3).在app/build.gradle中引入

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'

buildscript {
    ext.kotlin_version = '1.2.10'

    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

完成上面3步即可开始Kotlin之旅

  • 如果你的AndroidStudio版本是3.0之后则可以直接新建Kotlin文件,ide会自动加入引用

4.与Java的互操作性

  • 安装完Kotlin的插件后,可以新建Kotlin File/Class
  • Kotlin 在设计时就考虑了 Java 互操作性。可以从 Kotlin 中自然地调用现存的 Java 代码,并且在 Java 代码中也可以很顺利地调用 Kotlin 代码。
  • Java代码复制到Kotlin Class里可以转换为Kotlin代码
  • Kotlin 插件自带了一个 Java 到 Kotlin 的转换工具,可以把所有Java代码转换成Kotlin代码,转换工具在Code菜单里面的Convert Java File to Kotlin File选项

总结

谷歌在2017年中举行的I/O开发者大会上宣布,将Kotlin语言作为安卓开发的一级编程语言。在Android开发中,必将会有越来越多人使用Kotlin来开发。后续还有几篇文章作为一个系列,目的是让熟悉Java的人看完后可以马上使用Kotlin进行开发。本篇文章是本系列文章的第一篇,主要简述了 什么是Kotlin为什么要用Kotlin ,Kotlin能写出更简洁的代码,而且Kotlin是空安全的,能杜绝大部分空指针异常。

下一篇
学习Kotlin(二)基本语法


原文链接:https://juejin.im/post/5a77176c6fb9a063435eb264

  • 5
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值