科技是一个很玄妙的事实,总会出现一个新的技术来挑战长期建立好的秩序,就像之前我们在谈论Android开发时,Java是主要的编程语言,但是其实有很多可用于编写Android应用程序也符合JVM的编程语言·,而这其中Kotlin成为了那个打破秩序的先行者。
事实上,在经过了谷歌的高调宣传之后,许多程序员已经将Kotlin称为编写Android应用程序的高级语言。Peter Ducker曾经说过:“新技术想要取代旧技术,它必须至少有10倍的好处。”那么我们就来看看Kotlin用于Android应用程序开发有哪些好处?
1.Kotlin是一种简单的语言
Java是一门存世已久的编程语言,每次的重大更新都会增加其的复杂性,新功能、新插件虽然很有用,但是它们让Java成为了一种更加复杂的语言。而相比之下,Kotlin的更新则少了很多复杂性的累积,所以Kotlin的代码更加简洁易读。
2.Kotlin问题更少
毫无疑问,Kotlin的问题要比Java更少,(除了NullPointerExeption问题)。当然,这也与Java的年龄有关,Java存世更久,暴露出来的问题,历史遗留的问题自然也就更多。
3.更少的问题也就意味着更少的错误修复时间
上文说过了Kotlin比Java的问题更少,那么很自然的需要的错误修复时间也就更少,再进一步Kotlin编写代码自然也就更简单容易。
4.易于互换
大家都知道Java到Kotlin的转变是非常顺利和迅速的,其实在实际项目中,Kotlin和Java代码是可以并存在一起的。所以如果你有一个项目最开始是使用Java来编码的,现在想转用Kotlin,也不需要从一个对象转移到另一个,这时,互操作性就是一个十分有利的条件。
5.最好的程序和功能编程
与其他几种编程语言不同,Kotlin具有程序和功能编程的均衡融合。
6.更强大的技术支持
由于Kotlin由JetBrains开发,该公司是设计Android Studio IDE的公司,它得到了Android Studio的全面支持。当程序员想将Java文件转换为Kotlin时,只需要在Android Studio菜单中进行一些小的更改。如下图所示,你的文件就顺利转换成Kotlin。
7.扩展功能
Kotlin扩展功能的存在确保了更清晰的Android App界面和更多其他优点。
8.Anko库
Anko库是Kotlin源文件,用于缓解与编程语言相关的XML相关复杂性。
9.输入安全语言
Kotlin中有可选的安全类型,每个类都是一个功能。总体来讲,Kotlin的结果产生经历了更多的安全检查。
10.消除代码中的null引用
NullPointerException,俗称NPE,是程序员经常遇到的一个异常。Kotlin 的设计目标就是希望消除代码中 null 引用带来的危险, 也就是所谓的造成十亿美元损失的大错误。
在类型上的处理,即在类型后面加上?,即表示这个变量或参数以及返回值可以为 null,否则不允许为变量参数赋值为 null 或者返回 null
对于一个可能是 null 的变量或者参数,在调用对象方法或者属性之前,需要加上?,否则编译无法通过。
不过对于kotlin是否真能取代java,这里不能下结论,只能说各有所长吧,不然java也不可能是最热的语言之一。
原文 https://segmentfault.com/a/1190000020729276