內容提要
《Kotlin開發快速入門與實戰》主要介紹在Kotlin開發中各種相關的技術及知識,全書共分為7章,內容層次清晰,難度循序漸進。第1章介紹Kotlin編程環境的搭建、如何運行Kotlin項目,以及編輯器的安裝;第2章介紹Kotlin程式語言的基礎,主要內容包括變數與常量、常見的數據類型、運算符以及流程控制語句;第3章介紹集合,以及常見的集合操作;第4章介紹函式和函式的使用;第5章主要介紹面向對象基礎知識和高級編程;第6章主要介紹Kotlin與Java的互操作、Kotlin與JavaScript的互操作;第7章主要介紹一個實例——電子拍賣系統,通過Kotlin編寫Android客戶端。 如果你有一定的Java編程基礎,則可以很容易理解Kotlin編程。沒有Java編程基礎也沒有關係,《Kotlin開發快速入門與實戰》也是從Kotlin編程基礎開始講起的。希望通過閱讀《Kotlin開發快速入門與實戰》,能夠讓你成為一個全棧工程師。
目錄
第1章 Kotlin環境搭建和開發工具 1
1.1 在Windows作業系統下配置Kotlin環境 1
1.1.1 在Windows作業系統下安裝及配置JDK 2
1.1.2 在Windows作業系統下安裝及配置Kotlin 7
1.2 在Linux作業系統下配置Kotlin環境 9
1.2.1 在Linux作業系統下安裝及配置JDK 9
1.2.2 在Linux作業系統下安裝及配置Kotlin 10
1.3 編寫第一個Kotlin程式:Hello Kotlin 11
1.4 Kotlin程式運行過程 12
1.5 使用IDE編譯並運行Hello Kotlin程式 13
1.5.1 安裝JetBrains ideaIC編輯器 13
1.5.2 在JetBrains ideaIC編輯器中安裝Kotlin外掛程式 15
1.5.3 在JetBrains ideaIC中創建“Hello Kotlin”項目 18
1.6 本章小結 21
第2章 Kotlin編程基礎 22
2.1 Kotlin編程風格 22
2.2 Kotlin常量和變數 23
2.2.1 常量 24
2.2.2 變數 24
2.2.3 變數作用域 25
2.3 Kotlin數據類型 26
2.3.1 布爾類型(Boolean) 26
2.3.2 數值類型(Number) 27
2.3.3 字元類型(Char) 30
2.3.4 字元串類型(String) 31
2.3.5 元組類型(Tuple) 32
2.3.6 可空類型(Null) 32
2.3.7 對象類型(Object) 33
2.3.8 數組類型(Array) 34
2.3.9 數據類型的檢查和轉換 35
2.4 Kotlin運算符 37
2.4.1 算術運算符 37
2.4.2 關係運算符 38
2.4.3 邏輯運算符 39
2.4.4 賦值運算符 40
2.4.5 位運算函式 41
2.4.6 運算符優先權 41
2.5 Kotlin流程控制語句 42
2.5.1 條件語句(if和when) 43
2.5.2 循環語句 45
2.6 跳轉語句 48
2.7 本章小結 50
第3章 Kotlin集合 51
3.1 集合 52
3.2 集合之List 52
3.3 集合之Set 55
3.4 集合之Map 57
3.5 集合操作符 59
3.5.1 總數操作符 59
3.5.2 過濾操作符 61
3.5.3 映射操作符 62
3.5.4 順序操作符 63
3.5.5 生產操作符 63
3.5.6 元素操作符 64
3.6 本章小結 66
第4章 Kotlin函式 67
4.1 模組化程式設計 67
4.2 函式定義 68
4.3 函式調用 70
4.4 可變參數函式 71
4.5 尾遞歸函式 72
4.6 高階函式 72
4.7 內聯函式 74
4.8 Lambda表達式 75
4.9 協程 77
4.9.1 阻塞VS掛起 78
4.9.2 協程的內部機制 79
4.10 本章小結 79
第5章 Kotlin面向對象 80
5.1 面向對象的基本概念 81
5.1.1 類 81
5.1.2 對象 81
5.1.3 面向對象的三大特性 81
5.2 類與對象 83
5.2.1 類的定義 84
5.2.2 成員屬性 85
5.2.3 成員方法 87
5.2.4 對象實例化 88
5.2.5 構造函式 89
5.2.6 繼承和多態的實現 92
5.2.7 封裝 96
5.3 Kotlin對象高級套用 99
5.3.1 this關鍵字的使用 99
5.3.2 super關鍵字的使用 100
5.3.3 open關鍵字的使用 101
5.3.4 嵌套類 101
5.3.5 數據類 102
5.3.6 枚舉類 103
5.3.7 對象表達式和對象聲明 105
5.3.8 密封類 109
5.3.9 抽象類 110
5.3.10 接口的使用 111
5.3.11 泛型 114
5.4 委託和委託屬性 116
5.5 錯誤與異常 123
5.5.1 自定義異常類 124
5.5.2 try表達式 125
5.6 包 125
5.6 本章小結 126
第6章 Kotlin互操作 127
6.1 Kotlin與Java互操作 127
6.1.1 Kotlin調用Java 127
6.1.2 Java調用Kotlin 131
6.2 Kotlin與JavaScript互操作 136
6.2.1 Kotlin調用JavaScript 136
6.2.2 JavaScript調用Kotlin 138
6.3 本章小結 140
第7章 電子拍賣系統 141
7.1 系統功能簡介和架構設計 141
7.1.1 系統功能介紹 142
7.1.2 系統架構設計 142
7.2 JSON簡介 144
7.2.1 使用PHP創建JSON數據對象 144
7.2.2 接口互動工具類 145
7.3 傳送請求的工具類 148
7.4 用戶登錄 150
7.4.1 處理登錄的LoginController 150
7.4.2 用戶登錄客戶端 151
7.5 查看流拍商品 160
7.5.1 查看流拍商品的ItemController 161
7.5.2 查看流拍商品客戶端 162
7.6 管理商品種類 168
7.6.1 瀏覽商品種類的KindController 168
7.6.2 查看商品種類 168
7.6.3 添加商品種類的KindController 174
7.6.4 添加商品種類 174
7.7 管理拍賣商品 176
7.7.1 查看自己的拍賣商品的ItemController 177
7.7.2 查看自己的拍賣商品 178
7.7.3 添加拍賣商品的ItemController 182
7.7.4 添加拍賣商品 183
7.8 競拍商品 189
7.8.1 選擇商品種類 189
7.8.2 根據種類瀏覽商品的ItemController 191
7.8.3 根據種類瀏覽商品 192
7.8.4 參與競價的ItemController 194
7.8.5 參與商品競價 195
7.9 本章小結 201