课程目录

开篇词 (1讲)

  1. 开篇词 _ 入门Kotlin有多容易,精通Kotlin就有多难

春节特别放送 (4讲)

  1. 春节刷题计划(一)_ 当Kotlin遇上LeetCode
  2. 春节刷题计划(三)_ 一题双解,搞定求解方程
  3. 春节刷题计划(二)_ 一题三解,搞定版本号判断
  4. 春节刷题计划(四)_ 一题三解,搞定分式加减法

答疑篇 (1讲)

  1. 答疑(一)_ Java和Kotlin到底谁好谁坏?

基础篇 (16讲)

  1. 01 _ Kotlin基础语法:正式开启学习之旅
  2. 02 _ 面向对象:理解Kotlin设计者的良苦用心
  3. 03 _ Kotlin原理:编译器在幕后干了哪些“好事”?
  4. 04 _ 实战:构建一个Kotlin版本的四则运算计算器
  5. 05 _ object关键字:你到底有多少种用法?
  6. 06 _ 扩展:你的能力边界到底在哪里?
  7. 07 _ 高阶函数:为什么说函数是Kotlin的“一等公民”?
  8. 08 _ 实战:用Kotlin写一个英语词频统计程序
  9. 09 _ 委托:你为何总是被低估?
  10. 10 _ 泛型:逆变or协变,傻傻分不清?
  11. 11 _ 注解与反射:进阶必备技能
  12. 12 _ 实战:用Kotlin实现一个网络请求框架KtHttp
  13. 加餐一 _ 初识Kotlin函数式编程
  14. 加餐三 _ 什么是“不变性思维”?
  15. 加餐二 _ 什么是“表达式思维”?
  16. 加餐四 _ 什么是“空安全思维”?

协程篇 (14讲)

  1. 13 _ 什么是“协程思维模型”?
  2. 14 _ 如何启动协程?
  3. 15 _ 挂起函数:Kotlin协程的核心
  4. 16 _ Job:协程也有生命周期吗?
  5. 17 _ Context:万物皆为Context?
  6. 18 _ 实战:让KtHttp支持挂起函数
  7. 19 _ Channel:为什么说Channel是“热”的?
  8. 20 _ Flow:为什么说Flow是“冷”的?
  9. 21 _ select:到底是在选择什么?
  10. 22 _ 并发:协程不需要处理同步吗?
  11. 23 _ 异常:try-catch居然会不起作用?坑!
  12. 24 _ 实战:让KtHttp支持Flow
  13. 期中考试 _ 用Kotlin实现图片处理程序
  14. 题目解答 _ 期中考试版本参考实现

源码篇 (9讲)

  1. 25 _ 集合操作符:你也会“看完就忘”吗?
  2. 26 _ 协程源码的地图:如何读源码才不会迷失?
  3. 27 _ 图解挂起函数:原来你就是个状态机?
  4. 28 _ launch的背后到底发生了什么?
  5. 29 _ Dispatchers是如何工作的?
  6. 30 _ CoroutineScope是如何管理协程的?
  7. 31 _ 图解Channel:如何理解它的CSP通信模型?
  8. 32 _ 图解Flow:原来你是只纸老虎?
  9. 加餐五 _ 深入理解协程基础元素

Android项目篇 (3讲)

  1. 33 _ Java Android开发者还会有未来吗?
  2. 34 _ Kotlin与Jetpack简直是天生一对!
  3. 35 _ 用Kotlin写一个GitHub Trending App

结束语 (2讲)

  1. 结束语 _ 不忘初心
  2. 结课测试 _ “Kotlin编程第一课”100分试卷等你来挑战!