|
|
本课程分为三部分。% L- ^) I( g' N0 b( a; A
第一部分会帮助你快速熟悉 Kotlin 的特有语法特性,以及在与 Java 项目产生冲突时如何解决。' Y" s9 j! _. \* z# b8 h, n
第二部分将带你深入的理解 Kotlin 语言的高级特性以及 Kotlin 特有语法背后的运行原理,同时掌握 Kotlin 协程库和 Google 推出的 KTX 扩展库的使用与内部实现原理。2 Z* u. _8 E7 W0 @$ |
第三部分将为你讲解 Kotlin 作为跨平台语言的特性,并介绍将 Java 项目迁移至 Kotlin 时需要注意的地方,更深入地理解 Kotlin 的优势和劣势,灵活利用 Kotlin 的扩展库以及跨平台特性,帮助团队更高效地进行实际项目的开发。6 L- y& c' F0 s) c' `( j
课程目录:
' V8 L E: _0 L第一章:快速上手篇 (12讲)( A: X- B" ~/ T6 G
01 | 讲给你的 Kotlin 快速上手课程1 g7 |1 g. V$ v4 t7 P
02 | Kotlin 最基础语法: G5 O H+ s' Y& k! |
03 | Kotlin 与 Java 完全兼容,就可以随便调用了吗?3 w9 E/ E2 Z* P; e& o7 ^
04 | 新手使用 Kotlin 常碰到的问题+ u5 ^/ e t- H" o
05 | 函数也能嵌套?这个特性要注意
. t1 j& Z2 s; x3 k# q2 I06 | 用扩展函数简化代码调用( ^2 L7 T$ S" M# o
07 | DSL的基础 : Lambda闭包的语法; a8 S2 K+ T- G$ b% O6 v0 S- m
08 | 函数的参数是函数 : 高阶函数的注意事项
2 [( H) X. e. N6 ]/ [0 y+ @09 | 创建对象的关键 : Kotlin的构造函数' ?7 A# ~! M3 f) |; _% @% S, @( o# p
10 | 伴生对象 : Kotlin 特有的单例对象
% r$ |' N! W* v8 p+ V4 @ G1 d+ w11 | by关键字的使用* {8 Y- x- o. H
12 | Kotlin 独有的特殊类
3 ~; m1 N" N! V: [/ O. ^% d3 o第二章 :深入学习篇 (13讲). e5 M8 q, k& I( ]: C: Z
13 | 解构 : 特殊的数据拆箱方式
* U( R: u! `5 p# e a) h14 | Kotlin 的循环语法
2 N6 g' l9 r* o15 | Kotlin海量的集合操作符
" f: b& G" h9 k$ r& p3 B; S; x) q2 e16 | 作用域函数 : 你会爱上的自带函数
- M; |& U5 a" ]# |& o17 | 运算符与中缀 : 定义你的专有运算符* _$ x" y8 x2 d, ]/ f$ ]
18 | 神奇的符号 : Kotlin 的反引号# O; w8 f1 g1 Q& R7 T7 z) z
19 | DSL 是什么,原来早就用过了
9 ~3 M' R2 C) v' r7 L20 | 构建 DSL 的常用方式
I: K/ [$ `3 L7 ^0 A21 | 定义自己的 DSL' H/ T1 n" o4 Z2 {3 W: `
22 | 理解 Kotlin 中的常量与只读& z" }8 `5 j) o2 N- {0 m) G
23 | Kotlin 的空安全是如何实现的
; b9 D8 b- w( X3 A1 |+ z! n4 s% {6 H* F24 | Kotlin 内联 : noinline与crossinline
* O9 {3 G. @7 Y25 | Kotlin 的真泛型与实现方式' u3 j2 e3 \1 b5 ~1 s7 D) S7 e
第三章 :扩展库篇 (14讲)
* y$ T7 _+ H, t$ b, t1 ^8 L26 | 协程 : 提升性能的利器
1 Z! ]+ ^& p4 x1 L+ h- t" @27 | 在Kotlin 中使用协程4 C7 c$ ]% x3 O; ?) C# g3 S9 U
28 | 协程的启动参数9 s" H/ C* M, v- Z$ [: m! u
29 | 协程的语法糖
4 S# r# y% W: u. ~! T. r) Y30 | suspend : 知其然知其所以然
; |# J0 c2 w4 T31 | 协程的内部实现原理7 t) K$ t% _% z7 a3 g" d2 i
32 | 动手设计Kotlin 协程的yield' ~. N5 G# \( C% s5 r
33 | 协程通信:Channel的使用
% p, {0 P) h! b1 _) @' |- h8 j6 I! Q34 | 小结 : 动手设计Channel版的EventBus
7 J; B7 v: Q( b3 ^# F) z) A35 | NIO 与 BIO
! p0 |$ v- k8 ~3 @- R& Z36 | Kotlinx-io 的对象缓存池
9 U# _5 {4 H% i2 j+ \37 | Google 推出 KTX 的目的0 M/ F) \$ d% Z. ?9 H) t
38 | KTX 的实现( ~5 a! k5 R0 r8 }/ t5 b$ L
39 | KTX 小结
, T) _! C5 `9 V第四章 :团队协作篇 (3讲)7 ^. ?% c1 w. g4 Y2 o/ y9 g, O
40 | 在团队中使用 Kotlin1 A& M. P( [. b6 I
41 | 用 Kotlin 改写现有工程
! o% \5 e& d4 U6 P k/ R42 | 滥用特性的后果:没人懂的代码
- J6 d. ^ T6 _7 p" H/ a, U第五章 :Kotlin 跨平台篇 (8讲)
d1 a' p2 M& i5 T7 P! S43 | Kotlin 服务端开发框架3 V L, ]2 e& m; U' T1 I
44 | Http Servlet 创建 Kotlin 版 Web 应用% f5 q8 {( z# Z
45 | Spring Boot 创建 RESTful Web 服务) p" ]4 | W/ f# T; \) X9 U5 g& O$ }
46 | Kotlin 开发 Web 前端
1 I$ F6 c9 r" c R47 | Kotlin Native 开发
' g/ C* b7 {' N9 j4 \: g4 z48 | 创建 Kotlin Native 基础库; k# q) T6 p2 U! C- U9 `2 H( [
49 | 如何用 Kotlin 实现 Android MVP
7 g2 G5 o& s- C+ O50 | Android MVP 的 Kotlin 代码
X8 @% _8 W* X v * u# r$ h" }% M0 s d3 j- A
1 @' x6 P7 J% l, F8 [ c, X6 v6 ~& M2 Y6 C
|
|