学习 Kotlin:编码与构建 应用图标

学习 Kotlin:编码与构建

教育 · 免费 · iOS & Android · CoddyKit

学习 Kotlin:编码与构建 — 在手机上编写并运行真正的 Kotlin,使用云端编译器

学习 Kotlin:编码与构建 是一款免费的 iOS 和 Android 应用,适合初学者、Java 开发者以及希望通过亲自编写 Kotlin 来学习的面试求职者。每节课程最后都会提供代码,供你在真正的编译器(JVM 上的 kotlinc)中编辑和运行,并显示指向具体行号的错误。51 门课程和 203 节课程,从第一个 val 一直讲到协程、Flow、泛型和 DSL,同时还配有 AI Mentor 和每日练习 Lab。

App Store — 免费下载Google Play — 免费下载
价格
免费,可升级至 Pro
平台
iOS 和 Android
语言
22
年龄分级
4+
需要
iOS 15.1 或更高版本
Kotlin Academy 主屏幕,显示学习路径卡片、Daily Goal 和 Feature Request,标题为 Learn Kotlin Like a ProIntroduction to Kotlin 课程概览,显示总体进度为 0 of 30,并将第一课标记为免费
51课程,A1 至 C1
kotlinc真正的 JVM 编译器
Lab每日编程练习
先读一点,然后亲自编译。

这门语言本身就承担了大量教学工作:编译器会拒绝可能为空的值,警告未使用的值,并在错误信息中标明具体行号。应用会将你的代码发送到 JVM 上真正的 kotlinc,并返回带行号的错误和警告,因此阅读编译器的提示也成为学习的一部分。

这是什么

学习 Kotlin:编码与构建 是一款免费的 iOS 和 Android 应用,通过让你亲自编写并运行 Kotlin 来教授这门语言。代码会在云端的真正 Kotlin 编译器(JVM 上的 kotlinc)中运行,错误信息会带有行号。应用涵盖 51 门课程和 203 节简短课程,内容从初级(A1)到高级(C1),从变量和 when 表达式一直讲到协程、Flow、Ktor 和 Multiplatform,并配有 AI Mentor、每日 Lab、15 个引导式项目、60 个任务和面试题。

应用内

界面展示

Kotlin Academy 主屏幕,显示学习路径卡片、Daily Goal 和 Feature Request,标题为 Learn Kotlin Like a Pro
学习路径主屏幕打开后会显示 Kotlin Academy 学习路径,其中有 Start First Lesson 按钮、每日目标和功能请求卡片,下方则是 Skill Hub。
Introduction to Kotlin 课程概览,显示总体进度为 0 of 30,并将第一课标记为免费
课程概览课程页面显示总体进度条和 0/30 计数器,下面是课程章节,其中 Introduction to Kotlin 的第一章标记为免费。
Kotlin 代码编辑器显示一个回文函数,工具栏中有 Code Library、Generate Code 和 AI Enhance 按钮
代码编辑器编辑器中是一段 Kotlin 程序,这里展示的是回文检查程序;代码上方有符号栏,以及 Code Library、Generate Code 和 AI Enhance 按钮。
AI Chat 页面提供四个提示词,用于解释概念、提供学习建议、进行测验以及为 Kotlin Academy 制定学习路线
AI Chat预设提示词可以让 AI 解释关键概念、提供学习建议、测试你的掌握情况,或制定学习路线。
Kotlin Academy 浅色主题主屏幕,显示学习路径、Daily Goal 和 Skill Hub
浅色主题同一个主屏幕的浅色主题版本,学习路径下方显示每日目标和功能请求卡片。

课程

Kotlin 课程涵盖的内容

这些是本网站 Learn Kotlin 分类下的真实课程,旨在展示从第一个程序到协程和服务器端代码的学习路径。

  1. 欢迎学习 Kotlin

    先初步了解这门语言,接着通过 Kotlin Playground:交互式入门来运行你的第一个程序。

  2. 深入理解空安全

    了解类型系统如何区分可空类型和非空类型,以及如何在日常开发中使用 Safe Calls 和 Let Chains。

  3. 数据类与解构

    用于存储数据的类,借助 copy、equals 和 componentN Functions,了解编译器会为你生成哪些内容。

  4. 作用域函数

    学习 let、run、apply、also 和 with,以及每个函数在什么场景下最适合使用;然后通过 apply 和 also 掌握 Builder Pattern。

  5. 使用 map/filter/fold 构建函数式处理流水线

    使用 lambdas 转换集合,然后通过 Sequences 对较长的处理流水线进行惰性求值。

  6. Coroutine 取消与超时

    学习如何安全地取消任务并添加超时;同时通过 Flow Transformation & Error Handling,以及 StateFlow & SharedFlow Patterns,处理值流。

  7. Ktor:构建 HTTP 服务器

    在服务器端使用这门语言,并结合 Exposed:Type-Safe SQL and Serialization 处理数据。

  8. Multiplatform Mobile 基础

    跨平台共享代码,继续学习 KMP:构建共享业务逻辑层。

工作原理

课程如何进行

每节课程最后都会提供可修改和运行的代码,让你在阅读语言内容的几分钟内,同时完成练习。

  1. 阅读一节简短课程

    从免费的第一门课程开始,或直接跳到你需要的主题。每节课程用几分钟讲解一个概念,例如字符串模板、when 表达式或安全调用。

  2. 在真正的编译器上编辑并运行代码

    在内置编辑器中编写代码,然后在云端的 JVM 编译器上运行。错误和警告会带有行号,让你学会阅读它们;你还可以保存代码并记录笔记。

  3. 在 Lab 中练习,然后检验自己

    每日 Lab 练习帮助你保持连续学习记录,测验会解释每一道题的答案,而任务、引导式项目和 AI Mentor 则帮助你解决那些还没弄明白的内容。

包含内容

应用包含的内容

51

课程,A1 至 C1

203 节简短课程:变量和字符串模板、when 表达式、范围和集合、Null 安全、data classes、函数式流水线、序列、协程、Flow、泛型、委托、注解和反射。

kotlinc

真正的 JVM 编译器

代码会在云端 JVM 上的编译器中运行,而不是在模拟器中运行,并返回指向具体行号的错误和警告。

Lab

每日编程练习

每日 Kata 配有隐藏测试;NPE Hunter 用于处理真正会崩溃的程序;Coroutine Lab 使用虚拟时钟;此外还有 Compose 风格的布局预览、Ship It 和 Kotlin Doctor,以及复习卡片和错误日志。

15

引导式项目

每一步都会进行编译,并根据预期输出进行检查;Ship It 还会在七个步骤中将一个程序逐步扩展为命令行工具。

60

编程任务

通过简短任务练习每门课程所教授的内容,此外还有 World Coding Challenge,每天进行三轮全球挑战,并提供实时排行榜。

AI

AI Mentor 和面试准备

向 AI Mentor 询问错误或概念,几秒钟内即可获得清晰的解答。应用中还提供面试题和速查表,帮助你准备求职。

背景

Kotlin 有哪些用途?如果你已经会 Java,还有必要学习它吗?

Kotlin 是一种静态类型语言,会编译为 JVM 字节码,也是 Android 开发的首选语言之一。它还可用于服务器开发,配合 Ktor 等框架使用,并可通过 Multiplatform、Native 和 Wasm 编译到其他目标平台。对于 Java 开发者来说,它的优势在于更少的样板代码,以及会认真处理 null 的类型系统;对于初学者来说,它是一门现代化的入门语言,背后拥有同样的就业市场。由于运行在 Java Virtual Machine 上,它还可以使用现有的 Java 库。

Null 安全人们转向 Kotlin 的原因

能够容纳 null 的类型与不能容纳 null 的类型写法不同,因此编译器会在程序运行前标记潜在的 NullPointerException。安全调用、elvis 运算符、let 链和智能类型转换,都是日常处理它时使用的工具。

简洁的类更少的样板代码

一行代码声明 data class,就能生成 equals、hashCode、toString 和 copy;而 companion objects、enum classes 和 sealed interfaces,则涵盖了在旧版 Java 中需要数页代码才能实现的模式。这是 Java 开发者最先注意到的特性。

协程和 Flow无需回调的并发

协程可以让需要等待的代码(例如网络请求)以直线式方式编写,并使用 launch、async 和 await。Flow、StateFlow 和 SharedFlow 将这一理念扩展到值流,而取消和超时则是大多数初学者需要练习的部分。

Compose 和 Multiplatform语言的发展方向

Jetpack Compose 将 Android 界面描述为函数,而 Multiplatform 则可以在 Android 和 iOS 之间共享业务逻辑。二者都要求你先熟练掌握 lambda、作用域函数和泛型。

是否适合

适合哪些人——不适合哪些人

如果你符合以下情况,就很适合

  • 你是将这门语言作为第一门编程语言来学习的初学者
  • 你是一名 Java 开发者,正在转向 Kotlin,希望循序渐进地学习空安全、数据类和协程
  • 你正在准备开发者面试,希望获得面试题和每日练习
  • 你想阅读带行号的真实编译器错误,而不只是观看讲解
  • 你想在手机上利用短时间学习,并通过连续学习记录、测验和记忆卡片坚持下去

如果你符合以下情况,这不是适合你的工具

  • 你希望在没有网络连接时运行代码:代码会在云端的编译器上运行
  • 你想在 IDE 中构建完整的 Android 应用;这款应用教授的是 Kotlin 语言及其惯用写法,而不是取代 Android Studio
  • 你需要所有内容都免费:第一门课程、第一个引导项目、两个任务、每日 Lab 以及每天一个 AI Mentor 问题均可免费使用,Pro 则会解锁其余内容

问题

常见问题

学习 Kotlin:编码与构建 是什么?

学习 Kotlin:编码与构建 是一款免费的 iOS 和 Android 应用,用于学习 Kotlin。课程以代码练习结束,你可以在 JVM 上的真实编译器中编辑并运行代码;51 门课程覆盖从入门到高级的内容。这是一款独立的学习工具,与 JetBrains 没有任何关联,也未获得 JetBrains 的认可;Kotlin 是 JetBrains s.r.o. 的商标。

没有编程经验也能学习 Kotlin 吗?

可以。课程从你的第一个 val 开始,逐步学习变量、字符串模板、when 表达式、范围、循环和集合。每节课都很简短,AI Mentor 可以用通俗易懂的语言解释概念或错误。具备 Java 经验有助于学习后面的面向对象主题,但并非必需。

Java 开发者应该学习 Kotlin 吗?

如果你希望在相同的 JVM 和相同的库上减少样板代码,并使用由编译器检查的空安全,那么学习 Kotlin 很值得。这款应用适合 Java 开发者,因为它会循序渐进地讲解数据类、空安全、作用域函数、协程和泛型,并且每个主题都会在真实编译器上练习。

这款应用真的会运行 Kotlin 吗?需要联网吗?

应用会在云端的真实 Kotlin 编译器(JVM 上的 kotlinc)中运行你的代码,并返回带行号的编译器错误和警告。由于编译器位于远程服务器,运行代码需要网络连接。

Lab 是什么?

Lab 是每日练习专区。其中包括带隐藏测试的每日 Kata、运行时确实会因 NullPointerException 崩溃的程序组成的 NPE Hunter、在虚拟时钟上模拟 launch、async、await 和 cancel 场景的 Coroutine Lab、Compose 风格的布局预览、Ship It,以及用于评估代码的 Kotlin Doctor。记忆卡片和错误日志会展示哪些内容总让你出错。

它涵盖协程、Flow 和 Compose 吗?

协程和 Flow 各有专门课程,涵盖取消、超时、SupervisorScope、channels、Flow、StateFlow 和 SharedFlow。Compose 以 Lab 中的布局预览形式出现,而不是作为完整课程。Multiplatform、Ktor 和 Exposed 也各自拥有专门课程。

它适合准备面试吗?

应用包含用于准备开发者岗位的面试题、方便快速查找语法的速查表、会解释每个答案的测验,以及每日 Lab 练习。错误日志和记忆卡片可以帮助你重新复习答错的主题。

哪些内容免费?Pro 增加了什么?有证书吗?

可以免费开始使用:第一门课程、第一个引导项目、两个任务、每日 Lab 练习,以及每天一个 AI Mentor 问题。免费版本会显示广告。Pro 可解锁所有课程、项目和任务,并提供不限次数的 AI Mentor 使用,移除广告,还允许你参加最终考试以获得结课证书。该证书会记录你的学习成果,但不属于经过认证的资格证书。

为什么应用内部显示 Kotlin Academy?

Kotlin Academy 是应用内学习路径卡片上显示的名称,而应用商店页面的标题是 学习 Kotlin:编码与构建。它们是同一款应用。App Store 还曾以略有不同的标题列出它:Learn Kotlin - JVM & Compose。

支持哪些平台和语言?

应用通过 App Store 在 iOS 上运行,通过 Google Play 在 Android 上运行,界面支持 22 种语言。应用评级为 4+,Apple 设备需要 iOS 15.1 或更高版本。

开始使用

今天就运行你的第一行 Kotlin 代码

iOS 和 Android 免费开始使用,支持 22 种语言。

App Store — 免费下载Google Play — 免费下载
最近审核日期 · 由 CoddyKit 发布 · 隐私政策
可在 iOS 和 Android 上使用。