Kotlin 课程大纲
基础入门
- Kotlin 简介和特性
- 开发环境搭建 (IntelliJ IDEA, Android Studio)
- 第一个 Kotlin 程序
- 基本语法和数据类型
- 变量和常量 (var, val)
控制流
- 条件语句 (if, when)
- 循环 (for, while, do-while)
- 跳转表达式 (break, continue, return)
函数和 Lambda 表达式
- 函数定义和调用
- 默认参数和命名参数
- 单表达式函数
- Lambda 表达式
- 高阶函数
类和对象
- 类定义和实例化
- 构造函数和初始化块
- 属性和字段
- 继承和接口
- 数据类和密封类
- 对象声明和表达式
Null 安全
- 可空类型和非空类型
- 安全调用操作符 (?.)
- Elvis 操作符 (?:)
- 非空断言 (!!)
- 平台类型
集合
- List, Set, Map
- 可变集合和不可变集合
- 集合操作 (filter, map, reduce 等)
- 序列 (Sequence)
函数式编程
协程
- 协程基础
- 挂起函数
- 协程上下文和调度器
- 通道和流
- 异步编程模式
泛型
- 泛型函数和类
- 型变(协变和逆变)
- 类型投影
- 泛型约束
委托
- 属性委托
- 类委托
- 标准委托 (lazy, observable 等)
反射
DSL 构建
- 带接收者的函数字面值
- 中缀函数
- 操作符重载
- 构建 DSL
互操作性
- Kotlin 与 Java 互操作
- Java 代码调用 Kotlin
- Kotlin 代码调用 Java
- 注解处理
Android 开发
- Kotlin for Android 基础
- Android Jetpack 与 Kotlin
- 协程在 Android 中的应用
- 数据绑定和视图绑定
服务器端开发
- Ktor 框架入门
- Spring Boot 与 Kotlin
- 持久化与 Exposed
测试
- JUnit 5 与 Kotlin
- 模拟测试 (Mockk)
- 协程测试
多平台开发
- Kotlin Multiplatform 项目设置
- 共享代码编写
- 平台特定代码
工具和生态系统
- Gradle 与 Kotlin DSL
- Kotlin 标准库深入
- 第三方库集成
设计模式
性能优化
项目实战
- Android 应用开发
- 后端服务开发
- 跨平台库开发
Kotlin 生态系统
- JetBrains 工具支持
- Kotlin 社区和资源
- 持续学习和职业发展