跳到正文

Kotlin

中级通用

Kotlin 是一种静态类型编程语言,常用于 Android 应用和运行在 Java 虚拟机上的后端,也支持多平台开发。它通过类型检查、空值处理和更简洁的语法,帮助你提前发现部分错误,减少重复代码。

你可能会说:「我想给现有安卓应用加功能,继续用原来的 Java 库,但少写一些重复代码。」

读之前建议先了解

要点

  1. 1

    让类型和空值更明确

    做用户资料页时,昵称可能还没填写。Kotlin 用可空类型表达这种情况,编译器会检查你是否处理了空值。这样能提前发现部分问题,但不代表程序不会出现空指针错误。

  2. 2

    接着使用现有代码库

    在面向 Java 虚拟机的项目里,你可以让 Kotlin 与 Java 代码互相调用。因此,给旧后台加接口时,通常能沿用原来的库,逐步加入 Kotlin,而不是先重写整个项目。

  3. 3

    按目标平台组织代码

    Kotlin 不只用于安卓,也能用于后端和多平台共享逻辑。比如安卓与 iOS 可以共享订单计算,但相机、通知等平台能力仍要分别适配,选了同一种语言不等于所有代码都能通用。

容易混淆的地方

Kotlin 和 Java 都是编程语言,在 Java 虚拟机上可以协作,但语法与类型规则并不相同,Java 示例不能只换文件后缀就使用。Android 则是应用运行的平台,不是语言;用 Kotlin 写后端,也不会因此生成安卓应用。

什么时候用

适合用

  • 给现有 Java 安卓应用增加新功能,希望保留旧代码和依赖,逐步采用 Kotlin。
  • 团队熟悉 Java 生态,要开发订单、账户等后端接口,同时减少重复的数据处理代码。
  • 安卓和 iOS 应用需要共享价格计算、数据校验等逻辑,并愿意分别适配平台能力。

不适合用

  • 只想给普通网页增加表单交互,直接用 JavaScript 或 TypeScript 更贴近现有工具链。
  • 只是临时清洗一份表格数据,用 Python 脚本通常更省事,无需引入 Kotlin 构建环境。
  • 只为 iOS 做一个简单原生应用,团队也熟悉 Swift,直接用 Swift 更省去跨平台配置。

练一练

你接手一个 Java 编写的安卓记账应用,想让 AI 新增预算提醒,同时保留现有数据库库和登录模块。哪种方案更合理?

让 AI 帮你做

请在现有 Android 项目中用 Kotlin 新增预算提醒功能,保留 Java 登录模块和数据库依赖。先检查构建配置与模块接口,再实现功能;明确处理可空数据,补充预算边界测试,并说明验证方法。

接下来学什么