|
-- 會員 / 註冊 --
|
|
|
|
Kotlin入門與實戰 ( 簡體 字) |
作者:向治洪 | 類別:1. -> 程式設計 -> 手機程式 -> Kotlin |
譯者: |
出版社:人民郵電出版社 | 3dWoo書號: 51116 詢問書籍請說出此書號!【缺書】 NT售價: 445 元 |
出版日:5/1/2019 |
頁數:357 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787115498762 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言: |
內容簡介:《Kotlin入門與實戰》從Kotlin的發展史講起,將理論知識和項目實例相結合,全面介紹Kotlin的基礎與應用。通過閱讀本書,讀者可以迅速掌握Kotlin的基本操作,輕松應對使用Java開發所帶來的技術難題。 《Kotlin入門與實戰》內容共分為18章,由Kotlin入門與基礎、Kotlin語法和Kotlin項目實例3個部分組成。第一部分(第1∼3章)主要介紹了Kotlin的發展、Kotlin開發環境搭建、JVM語系和Kotlin各版本的重要特性。第二部分(第4∼16章)詳細解析Kotlin的基礎語法。第三部分(第17、18章)集中演示了基礎知識的實戰運用。 《Kotlin入門與實戰》適合前端開發人員、Android/iOS開發人員以及Java從業人員閱讀。 |
目錄:第 一部分 Kotlin入門與基礎 第 1章 Kotlin簡介 1 1.1 Kotlin發展史 1 1.2 面向對象編程概述 3 1.2.1 面向過程編程 3 1.2.2 面向對象編程 4 1.3 Java虛擬機 5 1.3.1 JVM語系生態 5 1.3.2 Java虛擬機概述 7 1.3.3 Kotlin應用程序運行過程 7 1.4 為什么使用Kotlin 8 1.5 Kotlin與Java的比較 11 1.6 小結 12 第 2章 Kotlin初體驗 13 2.1 Kotlin在線運行 13 2.2 Kotlin 1.1特性 15 2.2.1 JavaScript全面支持 15 2.2.2 JVM新特性 16 2.2.3 協程 17 2.2.4 標準庫 19 2.3 Kotlin 1.2新特性 20 2.3.1 多平臺支持 21 2.3.2 多平臺環境搭建 21 2.3.3 特定平臺聲明 24 2.3.4 標準庫支持 25 2.3.5 JVM特性 27 2.3.6 JavaScript特性支持 28 2.4 小結 29 第3章 Kotlin快速入門 30 3.1 在Mac上搭建Kotlin開發環境 30 3.1.1 安裝與配置JDK環境 30 3.1.2 安裝與配置IDE 33 3.2 Kotlin開發IDE介紹 36 3.2.1 IntelliJ IDEA開發環境 36 3.2.2 Android Studio集成開發環境 38 3.3 Kotlin的編譯與運行 42 3.3.1 命令行方式編譯運行Kotlin 42 3.3.2 運行Kotlin REPL 44 3.3.3 在瀏覽器中運行Kotlin 45 3.3.4 在Node.js中運行Kotlin 47 3.4 Kotlin構建方式 48 3.4.1 使用Gradle方式構建Kotlin 48 3.4.2 使用Maven方式構建Kotlin 50 3.4.3 使用Ant方式構建Kotlin 51 3.4.4 Kotlin與OSGi 52 3.4.5 Kotlin與Kapt 53 3.5 編譯器插件 55 3.5.1 全開放編譯插件 55 3.5.2 無參編譯器插件 56 3.6 小結 58 第二部分 Kotlin語法 第4章 Kotlin語法基礎 59 4.1 Kotlin編程風格 59 4.2 變量與屬性 61 4.2.1 變量聲明 61 4.2.2 getter和setter 63 4.2.3 訪問權限 65 4.3 基本數據類型 66 4.3.1 數值類型 66 4.3.2 字符類型 68 4.3.3 布爾類型 69 4.3.4 數組類型 69 4.3.5 字符串 70 4.4 包聲明與使用 72 4.5 流程控制語句 75 4.5.1 if條件語句 75 4.5.2 when語句 76 4.5.3 for循環 78 4.5.4 while循環 79 4.5.5 返回與跳轉 79 4.6 Kotlin運算符 80 4.6.1 賦值運算符 80 4.6.2 算數運算符 81 4.6.3 關系運算符 81 4.6.4 邏輯運算符 82 4.6.5 區間運算符 82 4.6.6 運算符優先級 83 4.7 運算符重載 84 4.7.1 一元運算符 85 4.7.2 二元運算符 86 4.7.3 位運算符 88 4.8 Kotlin操作符 88 4.8.1 冒號操作符 88 4.8.2 @操作符 89 4.8.3 $操作符 90 4.8.4 安全轉換操作符 90 4.8.5 類型判斷操作符 90 4.9 Kotlin動態類型 91 4.10 Kotlin空安全 92 4.10.1 可空類型與不可空類型 92 4.10.2 判空操作符 93 4.10.3 Elvis操作符 94 4.10.4 強校驗操作符 94 4.10.5 安全的類型轉換 95 4.10.6 可空類型集合 95 4.11 異常處理 95 4.11.1 異常類 95 4.11.2 自定義異常 96 4.11.3 try表達式 97 4.11.4 throw表達式 97 4.11.5 受檢異常 97 4.12 小結 98 第5章 類與接口 99 5.1 類 99 5.1.1 類的聲明 99 5.1.2 構造函數 101 5.1.3 類的實例 102 5.2 繼承 103 5.3 抽象類 106 5.4 接口 108 5.5 小結 110 第6章 擴展函數與屬性 111 6.1 枚舉 111 6.1.1 基本用法 111 6.1.2 枚舉類擴展 112 6.2 擴展 114 6.2.1 擴展的動機 114 6.2.2 擴展原生函數 114 6.2.3 靜態解析 115 6.2.4 擴展屬性 116 6.2.5 擴展伴生對象 117 6.2.6 擴展的作用域 117 6.2.7 類中聲明擴展 118 6.3 this表達式 120 6.4 小結 121 第7章 數據類與密封類 122 7.1 數據類 122 7.1.1 對象復制 123 7.1.2 序列化 124 7.1.3 成員解構 125 7.2 密封類 127 7.3 小結 128 第8章 集合與泛型 129 8.1 集合 129 8.1.1 集 129 8.1.2 列表 130 8.1.3 映射 132 8.2 泛型 133 8.2.1 泛型基礎 133 8.2.2 型變 134 8.2.3 聲明處型變 135 8.2.4 類型投影 136 8.2.5 星號投影 138 8.2.6 泛型函數 138 8.2.7 泛型約束 139 8.3 小結 139 第9章 對象與委托 140 9.1 對象 140 9.1.1 對象表達式 140 9.1.2 對象聲明 142 9.1.3 伴生對象 143 9.2 委托 144 9.2.1 類委托 144 9.2.2 委托屬性 145 9.3 標準委托 146 9.3.1 延遲屬性 146 9.3.2 可觀察屬性 147 9.3.3 Map委托 148 9.3.4 Not Null 149 9.3.5 局部委托屬性 150 9.3.6 提供委托 151 9.4 小結 152 第 10章 反射與注解 153 10.1 反射 153 10.1.1 類引用 154 10.1.2 類成員引用 154 10.1.3 函數引用 155 10.1.4 屬性引用 156 10.1.5 構造函數引用 157 10.1.6 KClass反射 158 10.1.7 對象序列化 161 10.2 注解 162 10.2.1 注解聲明 162 10.2.2 注解使用 163 10.2.3 注解類的構造函數 165 10.2.4 注解使用場景目標 166 10.2.5 與Java注解互調 167 10.2.6 注解分類 168 10.2.7 注解的生命周期 169 10.3 小結 169 第 11章 函數與Lambda表達式 170 11.1 函數 170 11.1.1 函數基本用法 170 11.1.2 中綴表示法 171 11.1.3 函數參數 171 11.1.4 函數作用域 173 11.1.5 函數返回值 174 11.1.6 尾遞歸函數 175 11.2 高階函數 175 11.2.1 高階函數基本用法 175 11.2.2 標準高階函數 177 11.3 內聯函數 179 11.3.1 內聯Lambda表達式 179 11.3.2 內聯函數聲明 180 11.3.3 非局部返回 181 11.3.4 實例化類型參數 182 11.3.5 內聯屬性 183 11.4 Lambda表達式與匿名函數 183 11.4.1 Lambda表達式語法 184 11.4.2 函數類型 185 11.4.3 匿名函數 185 11.4.4 閉包 186 11.4.5 函數顯式聲明 186 11.5 小結 187 第 12章 協程 188 12.1 協程簡介 188 12.1.1 協程與線程 188 12.1.2 使用協程的好處 189 12.2 協程開發環境 190 12.2.1 Gradle構建方式 190 12.2.2 Maven構建方式 191 12.3 協程基礎 192 12.3.1 launch函數 192 12.3.2 共享線程池 193 12.3.3 阻塞與掛起 193 12.3.4 runBlocking函數 194 12.3.5 協程取消 195 12.3.6 協程超時 195 12.3.7 標準API 196 12.4 掛起函數 197 12.4.1 默認順序執行 198 12.4.2 異步并發執行 198 12.4.3 異步樣式函數 200 12.5 協程上下文與調度器 201 12.5.1 協程調度與線程 201 12.5.2 非限制與限制協程 202 12.5.3 協程與線程調試 203 12.5.4 協程中的子協程 203 12.6 通道 204 12.6.1 通道基礎 204 12.6.2 通道的關閉與迭代 205 12.6.3 通道生產者 206 12.7 管道 206 12.7.1 管道生產與消費 206 12.7.2 管道與質數 207 12.7.3 多接收者協程 208 12.7.4 通道緩存 209 12.8 小結 210 第 13章 I/O操作與多線程 211 13.1 Kotlin流層次 211 13.1.1 字節輸入流 212 13.1.2 字節輸出流 213 13.1.3 字符輸入流 214 13.1.4 字符輸出流 215 13.1.5 字符流與字節流轉換 216 13.2 文件I/O操作 216 13.2.1 文件讀取 217 13.2.2 文件寫入 217 13.2.3 文件遍歷 218 13.3 網絡I/O操作 219 13.4 多線程 219 13.4.1 線程創建 220 13.4.2 線程同步 220 13.5 小結 221 第 14章 Kotlin DSL 222 14.1 DSL簡介 222 14.1.1 DSL的設計與實現 222 14.1.2 DSL分類 223 14.2 DSL語義模型 223 14.2.1 依賴網絡 224 14.2.2 產生式規則系統 224 14.2.3 狀態機 224 14.3 Kotlin的DSL特性 225 14.4 使用kotlinx.html創建DSL 226 14.4.1 Maven構建方式 227 14.4.2 Gradle構建方式 228 14.4.3 kotlinx.html實例 229 14.5 Android Gradle指南 233 14.5.1 鏈式命令 233 14.5.2 委托 234 14.6 使用Kotlin與Anko進行Android開發 235 14.6.1 Anko簡介 235 14.6.2 Anko核心組件與工具 236 14.6.3 Anko使用實例 238 14.7 小結 242 第 15章 Kotlin互操作 243 15.1 Kotlin與Java互操作 243 15.1.1 在Kotlin中調用Java 243 15.1.2 在Java中調用Kotlin 251 15.1.3 JSR-305支持 257 15.2 Kotlin與JavaScript互操作 261 15.2.1 在Kotlin中調用JavaScript 261 15.2.2 在JavaScript中調用Kotlin 264 15.2.3 JavaScript模塊 266 15.2.4 JavaScript反射 269 15.2.5 JavaScript DCE 270 15.3 小結 271 第 16章 Kotlin Native開發 272 16.1 Kotlin Native 272 16.1.1 Kotlin Native簡介 272 16.1.2 Kotlin Native編譯器 273 16.1.3 編譯器konan 274 16.2 Kotlin Native實例 275 16.2.1 構建Kotlin Native項目 275 16.2.2 添加konan插件配置 276 16.2.3 編寫源代碼 277 16.2.4 添加konanInterop與konanArtifacts配置 278 16.2.5 編譯與執行 279 16.2.6 用命令行方式編譯Kotlin Native 280 16.3 使用Kotlin Native開發iOS應用 281 16.3.1 創建Kotlin Native項目 281 16.3.2 Kotlin Native測試 284 16.4 小結 286 第三部分 Kotlin項目實例 第 17章 使用Kotlin與Spring Boot開發服務端 287 17.1 Spring Boot環境搭建 287 17.1.1 Spring Boot簡介 287 17.1.2 創建Spring Boot應用程序 288 17.1.3 啟動Spring Boot應用程序 292 17.1.4 應用測試 293 17.1.5 properties配置文件 296 17.2 Spring Boot之Thymeleaf模板 298 17.3 使用Swagger構建RESTful API 301 17.4 Spring Boot通過MyBatis整合MySQL數據庫 304 17.5 Spring Boot整合Redis數據庫 308 17.5.1 Redis簡介 308 17.5.2 Spring Boot整合Redis 310 17.6 Spring Boot整合Elasticsearch 313 17.6.1 Elasticsearch簡介 313 17.6.2 Spring Boot整合Elasticsearch 315 17.7 Spring Boot集成RabbitMQ 319 17.7.1 RabbitMQ簡介 319 17.7.2 Spring Boot集成RabbitMQ 321 17.8 Spring Boot熱部署與日志管理 323 17.9 Spring Framework 5.0對Kotlin的支持 326 17.9.1 函數式Bean注冊方式 326 17.9.2 使用Kotlin調用Spring Web的功能性API 326 17.9.3 RestTemplate與函數式API擴展 327 17.9.4 Reactor的Kotlin擴展 327 17.9.5 基于模板的Kotlin腳本 327 17.10 小結 328 第 18章 使用Kotlin開發Android視頻應用 329 18.1 項目概述 329 18.2 淺談Android開發架構模式 329 18.2.1 MVC 331 18.2.2 MVP 331 18.2.3 MVVM 332 18.3 項目準備 333 18.3.1 新建Android項目 333 18.3.2 添加項目庫依賴 334 18.3.3 編寫主頁面 335 18.3.4 Android 6.0權限適配 338 18.3.5 GSYVideoPlayer播放器簡介 340 18.4 項目開發 341 18.4.1 基礎類封裝 341 18.4.2 Retrofit封裝 344 18.4.3 自定義狀態控制控件 345 18.4.4 首頁模塊開發 348 18.4.5 視頻詳情頁面開發 352 18.4.6 搜索功能的實現 355 18.5 小結 357 |
序: |
|