转载

谷歌再推 Kotlin:代码量比 Java 减少 80%

上周,谷歌刚刚推出免费的 Kotlin 和 Android 在线课程 ,教开发者使用 Kotlin 构建 Android 应用。很快,Google Home 团队也 现身说法 ,通过自身经历,展示了 Kotlin 开发的好处。

Google Home 应用程序可用来连接并管理各类智能家居设备。与不少受 谷歌 “Kotlin-first” 倡议 影响的应用相同,Google Home 也选择将 Kotlin 纳入其代码库。截至今年六月,该应用中约有 30% 的代码采用 Kotlin 编写,今后的新功能也被鼓励用 Kotlin 进行开发。

Google Home 团队提到,与 Kotlin 配合使用的是同样被谷歌推行的Jetpack 开源 UI 工具包,它结合了反应式编程模型和 Kotlin 编程语言的简洁性和易用性,旨在简化 UI 开发。

尽管目前只有 1/3 代码迁移到了 Kotlin,其高效和简洁的特性已使 Google Home 团队感受颇深。他们以数据类和 Parcelize 插件的使用为例证:在 Java 中由 126 行手写代码组成的类,在 Kotlin 中仅用 23 行就能够表示——代码量减少了 80%。此外,Kotlin 中一些函数方法还简化了许多嵌套循环和过滤检查。

另一方面,Kotlin 的可空性(nullability)也得到了赞许。依旧是与 Java 相比,Google Home 团队指出,“Java 中对可空性注释的用法不一致时,可能会导致遗漏一些 bug”。而采用 Kotlin 以来,Google Home 的 NullPointerExceptions 减少了 33%,这恰是 Google Play 控制台上最常见的崩溃类型,由此带来的崩溃数量减少也许能够显著改善用户体验。

谷歌再推 Kotlin:代码量比 Java 减少 80%

Kotlin 编程语言 2011 年由 JetBrains 推出,2012 年开源,2017 年 成为 Android 官方开发语言 ,并于 2019 年成为  Andoid 开发官方首选语言 。

从初始支持 Kotlin 再到 “Kotlin-first”,谷歌一直在对其进行多方位扶持,先后推出了Kotlin 免费在线课程和使用 Kotlin 构建 Android 应用的课程;同时不断完善着相关生态,比如今年四月开源了 gRPC-Kotlin/JVM,让开发者可以在 Kotlin 项目中更方便地使用 gRPC。

随着谷歌的极力推行,Kotlin 的关注度一路水涨船高,最新的JVM 生态报告显示,Kotlin 已成为第二受欢迎的 JVM 语言。Android 开发专家沈哲在接受开源中国的采访时曾提到,国内一些公司也开始使用 Kotlin 开发 Android 项目,“越来越多的开发者会选择 Kotlin 作为原生 App 的首选开发语言”。

作为一门 JVM 语言,一门兼容甚至被认为要取代 Java 的语言,Kotlin 的出场也往往伴随着与 Java 的比较。谷歌甚至推出了 从 Java 迁移到 Kotlin 的官方指南 。部分 Android 开发者仍在犹豫是否要转到 Kotlin,有一些人已经从 Java 迁移到 Kotlin 又迁回了 Java。在一年前  Dice 网站发布的调查中,85% 的受访者几乎一边倒地选择仍旧使用 Java 来构建 Android 应用程序。

但其实在谷歌工程师看来,并没有必要将二者完全划清界限。Android Studio 技术负责人Jeffrey van Gogh就曾讲过,Java 与 Kotlin 具有极高的互操作性,所以两者完全可以共存于同一个项目中。目前如 Google Home 这样的谷歌自家应用,不少都采用这种融合式做法,Kotlin 更多地被用来编写新功能。

那么,再回到 “Kotlin 还是 Java” 这个也许已经令 Android 开发者感到厌烦的问题上,定论显然并不存在,关键是选择最适合的方式。


很遗憾的说,推酷将在这个月底关闭。人生海海,几度秋凉,感谢那些有你的时光。

原文  https://www.oschina.net/news/117389/google-home-benefits-from-using-kotlin
正文到此结束
Loading...