开始迁移到 Kotlin | Kotlin 迁移指南 (中篇)

今年五月份的 Google I/O 上,咱们正式向全球宣布 Kotlin-first 的这一重要理念,Kotlin 将成为 Android 开发者的首选语言,十月份举办的 Android Dev Summit 2019 大会上,咱们发布了使用 Kotlin API 开发的 Jetpack Compose 开发者预览版。html

咱们于近期开始连载了关于 Kotlin 迁移指南的系列文章,帮助开发者们顺利迁移并开始使用 Kotlin 构建 Android 应用。本篇是本系列的中篇,咱们将为您介绍如何迁移到 Kotlin,以及提供相关的学习资源。您能够点击这里查看上篇咱们对 Kotlin 的优点和介绍文章,也请关注接下来关于使用 Kotlin 的常见问题的推送。java

谁在用 Kotlin

开发者可能对新的语言有必定程度的保留态度,这也是咱们很是清楚的一点。因此当咱们宣布将 Kotlin 作为 Android 开发的首选语言时,咱们也会确保开发者在尽享 Kotlin 强大功能的同时,也不会遇到兼容性和迁移方面的困扰,这里咱们给出一些将您的项目迁移至 Kotlin 的建议和方法。android

由于 Kotlin 的这些优点与强大的语言特性,如今在 Google Play 上排名前 1000 位的应用中,有 44% 已经在使用 Kotlin 进行开发。在 2019 年 OSCON 大会上,Kotlin 更是荣获 “年度突破项目” 奖。浏览器

除了在技术上使用 Kotlin 语言特性开发了一些方便开发者的库以外,Google 也已经在本身的产品中普遍采用 Kotlin。koa

不只如此,咱们在九月份的谷歌开发者大会 (GDD) 上也分享了诸多使用 Kotlin 构建的应用 —— 其中包括部分中国开发者的热门应用:

开始作 Kotlin 迁移

一个已经在使用 Java 进行开发的 Android 应用团队该如何快速稳定地转而使用 Kotlin 呢?咱们给出的建议是 ”由点及面”,这里包括人和代码两个层面:ide

人的层面,咱们建议团队内部推举出一位 Kotlin “推广大使”,他/她须要作到:工具

  • 了解 Kotlin 并成为专家
  • 制定 Kotlin 开发流程
  • 参与代码审核,确保 Kotlin 开发流程获得顺利贯彻
  • 组建公司/团队内部的学习小组
  • 主动收集内部的问题并与开发者社区反馈探讨

代码层面,也须要按部就班:学习

  • 先使用 Kotlin 编写测试 (这时的工程依然在使用 Java)
  • 使用 Kotlin 编写新代码
  • 将现有代码更新为 Kotlin 代码

在将现有代码更新为 Kotlin 代码时,Android Studio 提供了 Java 转 Kotlin 的工具,只须要在菜单中选择 “Code → Convert Java File to Kotlin File” 便可:测试

△ Java 转 Kotlin 工具
另外,Kotlin 的迁移工做不必一蹴而就,开发者能够按照本身的进度来逐步进行迁移。一个项目中能够同时包含 .java 和 .kt 文件 (但同一个文件中不能够既有 Java 也有 Kotlin),开发者也能够在 Kotlin 代码中使用任何 Java 库。

△ Android Studio 的 Lint 检查中也能够打开 Kotlin 互操做检查
在 Kotlin 中调用 Java 时,有几点须要注意:

  • 请将代码标记为 @Nullable 和 @NotNull
  • 使用属性前缀 (getName(), setName(), isActive())
  • 避免使用 Kotlin 中的保留关键字 (when, is, 等)

更详细的 Kotlin 互操做指南请查阅 Android 开发者网站:网站

最后——如何说服管理层采用 Kotlin?这里咱们给出了几个使用 Kotlin 的核心优点以供参考:

  • 提升团队工做效率,使用 Kotlin 的话,编码的量会减小,对应的维护和测试工做量也会减小。
  • 提高应用品质,Kotlin 内建的强大功能会帮助开发者更轻松地开发出稳定精彩的应用。
  • 让团队氛围更融洽。更现代、更强大且拥有强大兼容性的开发语言能让团队内的沟通更为顺畅。
  • 顺应迁移到 Kotlin 的行业趋势。事实上如今不管是招募方仍是求职方,对 Kotlin 技能的需求也已经愈来愈多。

关于 Kotlin 推广大使和如何说服管理层使用 Kotlin 的更详细内容,请参考咱们以前发布的文章《如何在大型应用中添加 Kotlin》。

Kotlin 学习资源

咱们为你们准备了丰富的 Kotlin 学习资源,以知足各个阶段开发者的需求。

Udacity 在线 Kotlin 课程,彻底免费。重新手营到开发完整应用的课程均有覆盖。

“重构为 Kotlin” Codelab。这是一套中文 Codelab 课程,一步一步帮助你们亲手将代码重构为 Kotlin。

“使用 Kotlin 开发 Android 应用” 的官方文档。从互用性到使用场景均有详细的覆盖,另外还提供大量的示例代码。

  • 使用 Kotlin 开发 Android 应用:

developer.android.google.cn/kotlin

参加由社区自发组织的 “Kotlin/Everywhere” 系列线下活动,咱们欢迎开发者伙伴们面对面交流 Kotlin 的学习和使用。

另外,若是您但愿打下扎实的 Kotlin 语法基础的话,咱们也建议您使用 Kotlin Koans 进行在线练习。您能够直接在浏览器里作练习,也能够经过插件在 IntelliJ IDEA 或者 Android Studio 里练习。

咱们在近期举办的 Google 开发者大会上也有一个关于迁移到 Kotlin 的演讲,您能够在☟下面☟回顾:

请持续关注咱们接下来发布的与 Kotlin 迁移指南相关的文章。

若是您对在 Android 开发中使用 Kotlin 有任何疑问或者想法,欢迎在评论区和咱们分享。

点击这里即刻使用 Kotlin 打造精彩 Android 应用

相关文章
相关标签/搜索