2017 年 5 月 17 日,一年一度开发者盛宴的 Google I/O 大会第一天,Google 正式宣布了 Kotlin 成为 Android 官方支持的语言。而如今短短 5 个月过去,对于“Kotlin 即将取代 Java ”的消息却从未停止,那么为什么会有这样的预测呢?

事实上,Kotlin 并非是一种新的语言,JetBrains 早在 2011 年就宣布了 Kotlin 项目,但这和已经 22 岁的 Java 的相比,还显得尤为年轻,然而就是因为 Google 一个拥抱,使得 Java 工程师以及其他 Android 开发者有了些许的危机感?还是庆幸呢?

对于 Kotlin,它是一个基于 JVM 的编程语言,其主要设计目标为:

创建一种兼容 Java 的语言;
让它比 Java 更安全,能够静态检测常见的陷阱,如:引用空指针;
让它比 Java 更简洁,通过支持 variable type inference,higher-order functions (closures),extension functions,mixins and first-class delegation 等实现;
让它比最成熟的竞争对手 Scala 语言更加简单。

如今的 Kotlin 的确做到了比 Java 语法更加简洁、更安全、更贴近实际,所需编写的代码行大概比 Java 少 40%,并支持函数式编程,同时 Kotlin 与 Java 是可以互译的,这就为 Java 开发者转为基于 Kotlin 开发提供了一定的便利性。

而关于传言的“取代”,近日 Realm 公司的调查报告给出预测,其表示:“到 2018 年底,在 Android 开发领域,Kotlin 将超越 Java,成为开发 Android 应用的第一语言。”。

依据的来源是,Realm 在调查了大约十万名活跃的开发者后,发现在今年 5 月份 Google I/O 大会之前用 Java 编写的 Android 应用中有 20% 正在使用 Kotlin 进行重写。他们在官网上公布了调查结果,Kotlin 即将改变整个 Android 生态系统。

当然,这些数据不是特别适用于广泛的 Java 开发者群体,Oracle 最近估计这个群体有 1200 万人。不过数据表明,Android 生态系统确实处于迅速变化之中。

Realm 的数据显示,2016 年 9 月,Kotlin 占 Android 开发的 5.1%,而 Java 的占 94.9%。一年之后,这个比例变成 Kotlin 升至 14.3%,而 Java 则降为 85.7%。这个变化相当大。

对此,Realm 的营销副总裁 Paul Kopacki 在接受 IT 外媒 The Register 的电话采访时表示:“自 Google 在 5 月份的 Google I/O 大会上宣布 Kotlin 成为 Android 领域官方支持的开发语言以来,Kotlin 的使用量完全呈爆炸式增长。我们认为,到明年年底,作为 Android 应用开发语言,Kotlin 将会超越 Java。”他还说到,Kotlin 的快速增长是由于它的现代性。Kotlin 是一门更现代化的语言,更容易理解,更容易编写,抽象性也比 Java 高,而且它在设计之初就考虑到了移动设备。

Paul Kopacki 还表示使用 Realm 数据库的开发者已对将 Java 代码转换成 Kotlin 代码表示出了浓厚的兴趣。从 Realm 的调查结果可以看到,Kotlin 的人气在德国、日本和印度最高,美国排在第四位。

最后,The Register 联系了 Stack Overflow 希望了解有关 Kotlin 的数据,被告知:Kotlin 确实越来越受到追捧,但相比其他语言仍是小众语言。因此,风头正盛的 Kotlin 想要撼动常青藤 Java 在 Android 应用中的地位,仍需一定的时间。
 

03-12 02:38