內容簡介
本書內容改編自【第13屆】2021iThome鐵人賽
Software Development組佳作網路系列文章 ──《Coroutine 停看聽》
內容從非同步任務概念到 Coroutine 建構器的使用、結構化併發、多任務的處理...,完整包含所有使用 Kotlin Coroutine 需注意的要點,並在每一小節附上心智圖幫
助學習,讀完本書一定可以讓你更加認識 Kotlin Coroutine。
本書特色
掌握 Kotlin Coroutine 與執行緒的不同之處,以及如何解決執行緒的痛點。
內容包括 Kotlin Coroutine 的核心、多任務的處理以及單元測試,涵蓋所有實用部分,讓你讀完本書後脫離初學者的行列。
使用簡單易懂的範例介紹基礎核心觀念,循序漸進了解 Kotlin Coroutine,才能夠應用到真實專案中。
每章節附上心智圖,讓你左腦右腦一起動,文字圖像記憶一起來。
專業推薦
「Coroutine 往往是讓開發者選擇使用 Kotlin 的重要原因。Andy 的這本 Coroutine 專書從基礎觀念到進階語法加上測試應用,再輔以心智圖歸納,完整補足了Kotlin 技術書籍版塊的缺口。若您跟我一樣也曾在 Coroutine 學習之路上翻過車,在此推薦 Andy 的大作,再給自己一次進入 Kotlin 宇宙的機會。」
────JetBrains 技術傳教士 | 范聖佑
「Coroutine 不論是純 Kotlin 或 Android 開發都非常重要的一環,讓我們一起跟著 Andy 優雅的學習如何使用吧~」 ────Android GDE | Tim 林俊廷
Software Development組佳作網路系列文章 ──《Coroutine 停看聽》
內容從非同步任務概念到 Coroutine 建構器的使用、結構化併發、多任務的處理...,完整包含所有使用 Kotlin Coroutine 需注意的要點,並在每一小節附上心智圖幫
助學習,讀完本書一定可以讓你更加認識 Kotlin Coroutine。
本書特色
掌握 Kotlin Coroutine 與執行緒的不同之處,以及如何解決執行緒的痛點。
內容包括 Kotlin Coroutine 的核心、多任務的處理以及單元測試,涵蓋所有實用部分,讓你讀完本書後脫離初學者的行列。
使用簡單易懂的範例介紹基礎核心觀念,循序漸進了解 Kotlin Coroutine,才能夠應用到真實專案中。
每章節附上心智圖,讓你左腦右腦一起動,文字圖像記憶一起來。
專業推薦
「Coroutine 往往是讓開發者選擇使用 Kotlin 的重要原因。Andy 的這本 Coroutine 專書從基礎觀念到進階語法加上測試應用,再輔以心智圖歸納,完整補足了Kotlin 技術書籍版塊的缺口。若您跟我一樣也曾在 Coroutine 學習之路上翻過車,在此推薦 Andy 的大作,再給自己一次進入 Kotlin 宇宙的機會。」
────JetBrains 技術傳教士 | 范聖佑
「Coroutine 不論是純 Kotlin 或 Android 開發都非常重要的一環,讓我們一起跟著 Andy 優雅的學習如何使用吧~」 ────Android GDE | Tim 林俊廷
作者簡介
盧韋伸 (Andy Lu)
Android/Flutter 開發者,常在Medium上分享,為了學習 Kotlin 而加入 Kotlin 讀書會,除了在讀書會中幫忙導讀,也參加研討會分享關於 Kotlin 相關內容,第二次參加 iThome 鐵人賽就幸運得獎,寫了一本關於Kotlin 程式語言的書,也就是本書。
Medium:https://medium.com/@andyludeveloper
Android/Flutter 開發者,常在Medium上分享,為了學習 Kotlin 而加入 Kotlin 讀書會,除了在讀書會中幫忙導讀,也參加研討會分享關於 Kotlin 相關內容,第二次參加 iThome 鐵人賽就幸運得獎,寫了一本關於Kotlin 程式語言的書,也就是本書。
Medium:https://medium.com/@andyludeveloper
內容目錄
Chapter 1 前言:非同步任務
1-1 當循序程式設計遇上耗時任務
1-2 行程、執行緒
1-3 執行緒函式庫
1-4 執行緒的問題
Chapter 2 Coroutine 簡介
2-1 在專案中使用 Coroutine
2-2 搶佔式多工 VS 協同式多工
2-3 有堆疊協程、無堆疊協程
2-4 Coroutine 的三大要素
Chapter 3 無回傳值的 launch 以及有回傳值的 async
3-1 launch 建構器
3-2 async 建構器
Chapter 4 結構化併發
4-1 什麼是結構化併發?
4-2 Job
4-3 取消任務
4-4 取消多個任務
4-5 SupervisorJob
Chapter 5 內建的suspend 函式
5-1 delay 函式
5-2 yield 函式
5-3 join 以及 joinAll 函式
5-4 withContext 函式
5-5 withTimeout 與withTimeoutOrNull
Chapter 6 深入理解 Coroutine
6-1 CoroutineScope
6-2 CoroutineContext
6-3 調度器
Chapter 7 Channel
7-1 Channel
7-2 不同類型的 Channel
Chapter 8 Flow
8-1 第一個 Flow
8-2 Flow 是冷資料流
8-3 Flow 建構器
8-4 中間運算子(Intermediate Operators)
8-5 終端運算子(Terminal Operators)
8-6 在不同執行緒執行
Chapter 9 Coroutine 的單元測試
9-1 kotlinx-coroutines-test
9-2 runTest
9-3 調度器
9-4 在主執行緒上測試
後記
1-1 當循序程式設計遇上耗時任務
1-2 行程、執行緒
1-3 執行緒函式庫
1-4 執行緒的問題
Chapter 2 Coroutine 簡介
2-1 在專案中使用 Coroutine
2-2 搶佔式多工 VS 協同式多工
2-3 有堆疊協程、無堆疊協程
2-4 Coroutine 的三大要素
Chapter 3 無回傳值的 launch 以及有回傳值的 async
3-1 launch 建構器
3-2 async 建構器
Chapter 4 結構化併發
4-1 什麼是結構化併發?
4-2 Job
4-3 取消任務
4-4 取消多個任務
4-5 SupervisorJob
Chapter 5 內建的suspend 函式
5-1 delay 函式
5-2 yield 函式
5-3 join 以及 joinAll 函式
5-4 withContext 函式
5-5 withTimeout 與withTimeoutOrNull
Chapter 6 深入理解 Coroutine
6-1 CoroutineScope
6-2 CoroutineContext
6-3 調度器
Chapter 7 Channel
7-1 Channel
7-2 不同類型的 Channel
Chapter 8 Flow
8-1 第一個 Flow
8-2 Flow 是冷資料流
8-3 Flow 建構器
8-4 中間運算子(Intermediate Operators)
8-5 終端運算子(Terminal Operators)
8-6 在不同執行緒執行
Chapter 9 Coroutine 的單元測試
9-1 kotlinx-coroutines-test
9-2 runTest
9-3 調度器
9-4 在主執行緒上測試
後記
ISBN: 9786263333796