5 月份的 Google I/O 上,谷歌宣布 Kotlin-first,Kotlin 开始成为 Android 开发者的首选语言,接着谷歌针对 Kotlin 的相关建设不断。
本文简介了谷歌推出的 Kotlin 迁移指南相关内容。
开始从 Java 迁移到 Kotlin
谷歌建议“由点及面”进行迁移,包括人与代码两个层面:
人的层面,团队内部推举出一位 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 开发者网站:
https://developer.android.google.cn/kotlin/interop
猜你喜欢
-
疫情宅家搞硬盘,紫光P100是的真的行!
2020年的初始对于大家而言都不是一个好的开局,疫情的出现限制了走街串巷的那股热闹劲,大家伙只能躲在家里自娱...更多
2020-02-29 11:15:17
-
“跳水小王子”发布5G旗舰,撞脸三星s10
vivo正式发布APEX 2020,定位Vision Beyo…2020年2月28日,北京 今日,vivo正式发布了旗下第三代APEX概念机 APEX ...更多
2020-02-29 11:14:53
-
华为P40系列通过3C认证,HMS生态建设加速
华为P40系列已正式宣布将于3月26日在巴黎发布。 在以往的爆料中曾多次提到这一系列新机的国行型号。其中,ANA...更多
2020-02-29 11:13:56
-
APEX 2020发布,屏下摄像头带来真全屏
受疫情影响,vivoAPEX 2020的发布从线下的巴塞罗那搬到了线上,在2月28日以视频的形式展开。从线上公开的信息来...更多
2020-02-29 11:13:32
-
未来手机长这样 vivo APEX 2020实拍图
vivo正式发布APEX 2020,定位Vision Beyo…2020年2月28日,北京 今日,vivo正式发布了旗下第三代APEX概念机 APEX ...更多
2020-02-29 11:12:19
-
一颗6nm的国产5G芯,告诉了我们多少事情
2020年2月27日,紫光展锐正式发布了他们第二代5G智能手机平台方案虎贲T7520。作为一款由国内厂商推出、全球首...更多
2020-02-29 11:09:55
-
伴娃教育的全能助手 天猫精灵CCH开启AI
最近,全国各大中小学都在响应教育部 听课不停教、不停学 的号召。一时间,老师们从课堂讲师化身 网络主播 ,洗头...更多
2020-02-29 11:09:29
-
三星Galaxy Z Flip:备受女生青睐的4个秘
随着三星Galaxy Z Flip发布,很多女性用户已经开启了买买买的剁手模式。考虑到这款手机的独特性,亓纪咨询了一...更多
2020-02-29 11:07:51
-
全球首款屏下手机正式发布:骁龙865+60W无
随着春季发布会逐渐拉开序幕,近期各大厂商新品是一款接着一款发布,一时间许多小伙伴也是有些眼花缭乱,无独有偶...更多
2020-02-29 11:07:37