|
|
本课程分为三部分。; l9 K6 k2 H/ p8 h
第一部分会帮助你快速熟悉 Kotlin 的特有语法特性,以及在与 Java 项目产生冲突时如何解决。
* U" v! v4 ^+ L4 ]2 g 第二部分将带你深入的理解 Kotlin 语言的高级特性以及 Kotlin 特有语法背后的运行原理,同时掌握 Kotlin 协程库和 Google 推出的 KTX 扩展库的使用与内部实现原理。" Q6 f9 z2 e9 y
第三部分将为你讲解 Kotlin 作为跨平台语言的特性,并介绍将 Java 项目迁移至 Kotlin 时需要注意的地方,更深入地理解 Kotlin 的优势和劣势,灵活利用 Kotlin 的扩展库以及跨平台特性,帮助团队更高效地进行实际项目的开发。
" }+ r3 w! M. b f2 q# ~ j课程目录:: v) l: `# C7 l T0 w) C
第一章:快速上手篇 (12讲)3 W C# @6 p5 l! V- k2 M
01 | 讲给你的 Kotlin 快速上手课程3 {2 h( X. k( _. @
02 | Kotlin 最基础语法) l$ s& g5 {" m) t6 z
03 | Kotlin 与 Java 完全兼容,就可以随便调用了吗?
9 V, Y! H, v' Q3 [( n3 ~ Z/ f04 | 新手使用 Kotlin 常碰到的问题
3 W0 @, U5 S! E+ W* v. I05 | 函数也能嵌套?这个特性要注意
! ~3 h9 e n) V- W+ g% U. w06 | 用扩展函数简化代码调用4 D3 c. b& _' k$ o" U3 {
07 | DSL的基础 : Lambda闭包的语法) N) m) C0 J, V6 S8 p
08 | 函数的参数是函数 : 高阶函数的注意事项
5 E! q5 c9 k0 Z5 o$ V( U& s/ S( A09 | 创建对象的关键 : Kotlin的构造函数
8 T. j5 J* |3 D4 ]2 t4 i; f10 | 伴生对象 : Kotlin 特有的单例对象4 D6 T1 e9 b* m
11 | by关键字的使用
9 X; `. g/ j3 U1 W$ f% R% w12 | Kotlin 独有的特殊类
8 y& t: d1 O2 q7 P- V+ c第二章 :深入学习篇 (13讲)7 S$ v( U1 |' l: X
13 | 解构 : 特殊的数据拆箱方式
# \7 H5 y0 T( D" ~+ l. }8 q14 | Kotlin 的循环语法+ L$ Y, h# w3 C. d
15 | Kotlin海量的集合操作符/ s3 A# B# {9 v0 S# r z
16 | 作用域函数 : 你会爱上的自带函数
) Y# z) D" F2 C7 c* C6 A$ k" S17 | 运算符与中缀 : 定义你的专有运算符% ?( t% s0 R3 k8 A' e
18 | 神奇的符号 : Kotlin 的反引号
7 `- D/ S( W0 y' P( p6 d/ M0 A19 | DSL 是什么,原来早就用过了& m& a: @' R; M3 \
20 | 构建 DSL 的常用方式7 d- l2 m/ f9 A& l) j7 K
21 | 定义自己的 DSL
1 c! v O3 T3 }5 n8 q# }22 | 理解 Kotlin 中的常量与只读3 [1 C5 M9 G/ [, y3 v
23 | Kotlin 的空安全是如何实现的
2 [5 R( \( M/ g! s# [0 v2 Q24 | Kotlin 内联 : noinline与crossinline
- j7 z9 _& q8 a6 U7 D25 | Kotlin 的真泛型与实现方式
# W" t8 k- x7 T: T第三章 :扩展库篇 (14讲)" A! a3 P3 j8 f# t& c
26 | 协程 : 提升性能的利器
! ?# o( c ^2 p( ^& a2 B) C! P27 | 在Kotlin 中使用协程8 ]; o1 e6 R+ N: t0 G) b8 v+ }
28 | 协程的启动参数; ^" [- q. n c
29 | 协程的语法糖
4 H8 F( S; h P( f30 | suspend : 知其然知其所以然
8 S0 g' d+ z7 j31 | 协程的内部实现原理0 ~7 e0 z; @( l! V$ X" |9 A
32 | 动手设计Kotlin 协程的yield
. S4 y" R5 _( P33 | 协程通信:Channel的使用
) L' I I; X9 b% f2 q34 | 小结 : 动手设计Channel版的EventBus5 n: n. p/ O3 A7 ^- N
35 | NIO 与 BIO
- w* J: \( V- n4 }/ t; _36 | Kotlinx-io 的对象缓存池( _& p" L4 P2 D- J1 j! h, W/ d
37 | Google 推出 KTX 的目的
2 u" u8 v/ D3 u1 h/ o, \; y/ h38 | KTX 的实现$ J% D- n& n- D7 Y' P% h
39 | KTX 小结& g/ }3 [, V9 i4 [+ F
第四章 :团队协作篇 (3讲)
3 P( l& x7 H5 K40 | 在团队中使用 Kotlin8 g: S0 h6 }% E4 V+ a' _$ s$ [
41 | 用 Kotlin 改写现有工程- f0 L, j! b1 t5 A! M, Y$ V6 N
42 | 滥用特性的后果:没人懂的代码
# ]$ i7 ]$ F2 O2 b% W4 F第五章 :Kotlin 跨平台篇 (8讲)
. r# h$ _0 w- H# n; V" m43 | Kotlin 服务端开发框架' o+ O7 ~; W$ ~, P1 A% h% v
44 | Http Servlet 创建 Kotlin 版 Web 应用/ o2 H& _' ^* o- X. z6 q
45 | Spring Boot 创建 RESTful Web 服务3 E5 G- V* f a& S; [( m, Y. W( W) C
46 | Kotlin 开发 Web 前端
4 |5 w' ]( T( I47 | Kotlin Native 开发
+ |/ ], I& y+ x' A. I @* S. {48 | 创建 Kotlin Native 基础库5 e7 C* j2 Y0 v) h" B
49 | 如何用 Kotlin 实现 Android MVP
% t# k$ o7 c* v+ N9 O3 E50 | Android MVP 的 Kotlin 代码& Y8 y3 Q& O1 Z8 o
: A! Q0 D3 }5 T L- N
0 R# i: H! Q8 W
& K4 f/ N) B8 F |
|