Android 的 Kotlin 优先方法

在 2019 年 Google I/O 大会上,我们宣布今后将优先采用 Kotlin 进行 Android 开发,并且也坚守了这一承诺。Kotlin 是一种富有表现力且简洁的编程语言,不仅可以减少常见代码错误,还可以轻松集成到现有应用中。如果您想构建 Android 应用,建议您从 Kotlin 开始着手,充分利用一流的 Kotlin 功能。

为了支持使用 Kotlin 进行 Android 开发,我们和另一组织联手创办了 Kotlin 基金会,不断投入人力物力来提高编译器性能和 build 速度。如需详细了解 Android 的 Kotlin 优先承诺,请参阅 Android 在 Kotlin 方面的承诺

Android 徽标和 Kotlin 徽标

为什么要优先使用 Kotlin 进行 Android 开发?

我们查看了直接来自与会开发者、我们的客户顾问委员会 (CAB)、Google Developers 专家 (GDE) 的反馈,以及我们通过开发者调研获得的反馈。许多开发者已喜欢上使用 Kotlin,且提供更多 Kotlin 支持的呼声很高。下面介绍了开发者喜欢用 Kotlin 编写代码的原因:

  • 富有表现力且简洁:您可以使用更少的代码实现更多的功能。表达自己的想法,少编写样板代码。在使用 Kotlin 的专业开发者中,有 67% 的人反映其工作效率有所提高。
  • 更安全的代码:Kotlin 有许多语言功能,可帮助您避免 null 指针异常等常见编程错误。包含 Kotlin 代码的 Android 应用发生崩溃的可能性降低了 20%。
  • 可互操作:您可以在 Kotlin 代码中调用 Java 代码,或者在 Java 代码中调用 Kotlin 代码。Kotlin 可完全与 Java 编程语言互操作,因此您可以根据需要在项目中添加任意数量的 Kotlin 代码。
  • 结构化并发:Kotlin 协程让异步代码像阻塞代码一样易于使用。协程可大幅简化后台任务管理,例如网络调用、本地数据访问等任务的管理。

Kotlin 优先意味着什么?

在构建新的 Android 开发工具和内容(例如 Jetpack 库、示例、文档和培训内容)时,我们会在设计层面考虑到 Kotlin 用户,同时继续支持通过 Java 编程语言使用我们的 API。

Java 语言 Kotlin
平台 SDK 支持
Android Studio 支持
Lint
引导式文档支持
API 文档支持
AndroidX 支持
AndroidX Kotlin 特有 API(KTX、协程等)
在线培训 尽力而为
示例 尽力而为
多平台项目
Jetpack Compose
编译器插件支持 是 - Kotlin Symbol Processing API 由 Google 创建,用于开发轻量级编译器插件。

我们也使用 Kotlin!

我们的工程师喜欢使用 Kotlin 提供的语言功能,目前有超过 70 款 Google 应用都是使用 Kotlin 构建的。这包括 Google 地图、Google Home、Play、Google 云端硬盘和 Google 信息等应用。其中一个成功案例来自 Google Home 团队,他们将新功能开发工作迁移到 Kotlin 后,代码库大小减少了 33%,NPE 崩溃次数减少了 30%。

如需详细了解在 Android 开发中使用 Kotlin,请参阅在 Android 开发中使用 Kotlin 语言的常见问题解答