Android 开发者应该从 Java 转到 Kotlin 吗?

2019-05-1320:32:17编程语言入门到精通Comments2,305 views字数 1115阅读模式

谷歌宣布正在采取的下一个重大步骤是 Kotlin-first,Android 开发将越来越多地以 Kotlin 为主,许多新的 Jetpack API 和功能将首先在 Kotlin 中提供。并且当天谷歌就开源了 Jetpack Compose 呼应这一战略。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/12387.html

消息一出来,“Android 开发以后是不是只能用 Kotlin 了”、“Android 开发者应该从 Java 转到 Kotlin 吗”等问题困扰了开发者。对此,谷歌 Android Studio 技术负责人 Jeffrey van Gogh 进行了回应。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/12387.html

Android 开发者应该从 Java 转到 Kotlin 吗?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/12387.html

“我们将在很多方面继续支持 Java 编程语言”,Jeffrey 首先回答了 Android 关于 Java 支持的问题,同时给出了一张 Java 与 Kotlin 支持对照表。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/12387.html

表中可以看到,Kotlin 相比 Java,在 Android 开发中确实获得了更加重要的地位,“比如在线培训、样本,我们首先会在 Kotlin 中支持,Java 中将是‘尽力而为’。同时,有一些功能,如多平台项目和 Jetpack Compose,只会在 Kotlin 中提供。”文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/12387.html

Jetpack Compose 是一个非捆绑 UI 工具包,结合了反应式编程模型和 Kotlin 编程语言的简洁性和易用性,旨在简化 UI 开发。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/12387.html

这样来看,很显然在今后一段时间内 Android 开发者并不是只有 Kotlin 一种选择,Java 同样可用。而至于这是否只是一个过渡,则要听听 Jeffrey 是如何回答“是否应该从 Java 迁移到 Kotlin?”这一问题的。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/12387.html

“不要把‘Kotlin-first’误解成必须将现有 Java 开发的 Android 使用 Kotlin 重写”,Jeffrey 说到,并补充说明谷歌自家的应用也没有这样做。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/12387.html

Jeffrey 的意思是 Java 与 Kotlin 具有极高的互操作性,所以两者完全可以共存于同一个项目中。“看看 Android Studio,它有几十万行代码,其中大约有 10% 的 Kotlin 代码。我们所做的只是使用 Kotlin 编写新功能。Kotlin 与 Java 具有很好的互操作性,可以在 Kotlin 中编写单个类,其余部分使用 Java 编写,或者使用 Kotlin 编写 99% 的代码,而剩下的一点点用 Java 来写。”文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/12387.html

而具体应该继续使用 Java 还是转到 Kotlin,Jeffrey 表示这需要考虑一些因素,比如团队对于 Kotlin 的兴趣、Kotlin 的学习曲线之陡峭,还有能不能接受 Kotlin 本身相比 Java 在开发 Android 上的弱点,比如软件构建过程需要更长的时间,因为 Kotlin 编译器比通用 Java 编译器要慢,以及 Kotlin 生成的 APK 相对较大。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/12387.html

此外应用开发所处的阶段也需要考虑,Jeffrey 表示新项目使用 Kotlin 编写是更好的选择。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/12387.html

  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/ymba/12387.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定