Kotlin精通模块总览
# 00.Kotlin 精通模块总览
本模块用 3 篇入门教程带你从零掌握 Kotlin 语言,用 5 篇核心原理专栏带你沉到 JVM 字节码级别,读懂 Kotlin 独有的设计哲学。
阅读顺序:先 3 篇入门打基础 → 再 5 篇原理夯根基 → 回头再看 Android 项目代码,处处豁然。
# 一、模块目标读者
- 主力人群:会一门主流面向对象语言(Java / C++ / Python / Swift 皆可),想成为 Kotlin 熟练工程师的开发者
- 进阶人群:已经能写 Kotlin,但对
?.链、data class、协程、inline reified、委托这些"看得懂但说不清"的机制想彻底搞明白的开发者 - 面试冲刺:Android 高阶岗、Server 端 Kotlin 岗需要"字节码级"回答问题的候选人
# 二、学习路线图
# 三、篇目全景表
# 入门教程(3 篇)
| # | 篇名 | 定位 | 状态 |
|---|---|---|---|
| 1 | 01.基础语法与核心类型 | 变量、类型、空安全、函数、集合 | 骨架 |
| 2 | 02.类与对象详尽讲解 | 类系统全景 + 底层原理 | 骨架 |
| 3 | 03.高阶特性应用入门 | 扩展函数、Lambda、协程初识 | 骨架 |
# 核心原理专栏(5 篇,严格十章法)
| # | 篇名 | 核心疑问 | 状态 |
|---|---|---|---|
| 4 | 04.空安全类型机制原理 | 声明成 String 的字段为何还能 NPE? | ✅ |
| 5 | 05.数据类与等值比较原理 | data class 编译器帮我们生成了什么? | ✅ |
| 6 | 06.协程调度器运行原理 | suspend 关键字到底变成了什么? | ✅ |
| 7 | 07.内联与具化泛型原理 | 泛型擦除怎么被 reified 破解? | ✅ |
| 8 | 08.委托代理与属性委托 | by lazy 背后生成了几个类? | ✅ |
# 四、与其他模块的差异定位
| 对比对象 | 差异点 |
|---|---|
| C++ 专栏 | Kotlin 的"底层下沉"沉到 JVM 字节码 + IR,不是汇编 |
| Java 专栏 | Kotlin 关注 Java 互操作陷阱:平台类型、@Jvm* 系列、SAM 转换 |
| 官方文档 | 官方讲"是什么怎么用",本模块讲"编译成什么、为什么这么设计、事故怎么发生" |
# 五、Kotlin 模块专属六项要求
| 要求 | 落地方式 |
|---|---|
| JVM 字节码视角 | 每篇原理文都要 javap -p -v 或 IntelliJ 反编译验证 |
| 多编译目标视角 | 关键点对比 Kotlin/JVM、Kotlin/Native、Kotlin/JS 三分支实现 |
| Kotlin 版本演进 | 标注特性在 1.3 / 1.5 / 1.7 / 1.9 / 2.0 中的引入或稳定版本 |
| 零开销证据 | 凡声称"零开销包装"处,必须有字节码 diff 佐证 |
| Java 互操作陷阱 | 明确指出哪些写法会让 Java 侧调用体验劣化 |
| 协程与线程对比 | 涉及并发处必须给出协程 vs 线程的性能/语义对比 |
# 六、写作规范速查
- 入门教程:仿
docs/11.CodeX/02.Cpp入门到精通/01.入门教程/09.类和对象.md——12 节内含"知识点 + 案例 + 思考题 + 训练题 + 陷阱 Top 5" - 原理专栏:严格套用
docs/11.CodeX/02.Cpp入门到精通/03.专栏博客/61.写作模板.md的十章法 - 二级/三级标题:6~9 字,动宾结构 + 落点,避免空泛
# 七、下一步
按顺序打开 01.基础语法与核心类型 开始学习。
上次更新: 2026/07/05, 15:10:54