iT邦幫忙

coroutine相關文章
共有 66 則文章
鐵人賽 Software Development DAY 4
Coroutine 停看聽 系列 第 4

技術 Day4:Coroutine 的四大特點

在前一篇文章中,我們完成了一個 Coroutine 的程式,並且在最後我們發現了兩個特點: 用 Coroutine 完成的程式碼可以讓非同步程式碼以同步的程式...

鐵人賽 Mobile Development DAY 8

技術 day8 kotlin coroutine的 runBlocking, withContext

runBlocking 中文用戶如我們? 直譯一下就是,跑一個塞住 恩,三小? 他真正的意思是,執行一個程式碼區塊,但他的一個特點就是,他真的會塞住,有別於la...

鐵人賽 Mobile Development DAY 17

技術 day17 不懂kotlin flow資料流? 那喝杯進口奶茶吧

用過Rx或reactive stream的大大,應該會很好理解flow,從設計概念來講,flow也屬於react stream,如果有從那邊轉過來的人,可以先看...

鐵人賽 Mobile Development DAY 9

技術 day9 Kotlin coroutine 的黑魔法 suspend

suspend他並不能切換線程,切換線程的是內部自帶的suspend函數,ex. withContext coroutine只是能用阻塞寫法寫出非阻塞代碼,本質...

鐵人賽 Mobile Development DAY 23

技術 day23 stateFlow狀態流,又是沒梗的一天

前面我們講到如何應coroutine的flow和liveData合作,但android其實還推出了另一個東西,stateFlow,剛好之前的line截圖,也點出...

鐵人賽 Mobile Development DAY 21

技術 day21 開分支,淺談kotlin paging3 with flow

注意,我只講了codelab的50%左右,但對paging3和flow的概念講完了 通常有codelab,我都會直接叫人去看,但唯獨paging3,我覺得值得一...

鐵人賽 Mobile Development DAY 6

技術 day6 阿伯出事啦 exception

Coroutine支援kotlin一般的Exception處理 try/catch/finally, 或是runningCatch (內部依然使用try/cat...

鐵人賽 Mobile Development DAY 22

技術 day22 熱流sharedFlow

在flow那篇我們了解到flow的特性,尤其是每次collect都會創建新的實例,但在某些use case卻不適用,而kotlin為此推出了shareflow和...

鐵人賽 Mobile Development DAY 5

技術 day 5 knock, knock我要開始coroutine

coroutine神奇又好用,那我要怎麼開始呢?官方提供了兩種方法,launch和 async launch launch的意思,大概是我要這裡創造新的coro...

鐵人賽 Mobile Development DAY 20

技術 day20 在ui蒐集flow,能取代liveData嗎?

好的,前一篇講到了flow可以完全取代liveData,其實錯!! 直接從結論開始講,flow並不支援data binding,也有其限制,用stateflow...

鐵人賽 Software Development DAY 25
Coroutine 停看聽 系列 第 25

技術 Day 25:[Android] 將 LiveData 用 Flow 替代吧

LiveData 是 Android 中一個很有用的項目,它是一種可觀察(Observe)的資料存儲器類(data holder)。它會感知 Android 的...

鐵人賽 Software Development DAY 7
Coroutine 停看聽 系列 第 7

技術 Day7:CoroutineScope:launch() 以及 async()

在前一篇文章我們知道 suspend 函式必須要在 Coroutine scope 裏面才能執行,本篇文章我們來了解一下兩個 Coroutine Builder...

鐵人賽 Mobile Development DAY 25

技術 day25 矮額是callback,把它變成flow好了 簡單的callbackFlow

終於寫道flow的最後一篇了 儘管我們在自己的開發上,能夠高興地寫coroutine和suspend,但人生總是不那麼美好,我們會在各式sdk或套件裡遇到cal...

鐵人賽 Software Development DAY 5
Coroutine 停看聽 系列 第 5

技術 Day5:深入認識 Coroutine

這幾天我們把 Coroutine 神秘的面紗好像掀開了一點,知道他是用來解決非同步程式的問題,也我們知道四個 Coroutine 的特點。Coroutine 的...

鐵人賽 Software Development DAY 11
Coroutine 停看聽 系列 第 11

技術 Day11:調度器(Dispatchers),我跳進來了,又跳出去了

Coroutine 一個重要的特性就是可以輕易的切換執行緒,不過 Coroutine 是使用 CoroutineDispatcher (調度器) 來切換執行緒,...

鐵人賽 Software Development DAY 10
Coroutine 停看聽 系列 第 10

技術 Day10:例外處理,留下來或我跟你走

程式在執行的時候,有些時候我們會遇到一些例外的情況,我們一般會使用 try-catch 來攔截程式執行所拋出的例外,用 try-catch 攔截到之後,我們就可...

鐵人賽 Mobile Development DAY 26

技術 Station list screen testing

終於來到為 ViewModel 寫 unit test 的部分,亦都意味着這個系列快要完結。之前我們寫過其他 layer 的 unit test,用過 Mock...

鐵人賽 Mobile Development DAY 19

技術 day19 Kotlin coroutine flow with liveData in MVVM

恩,標題不知道怎麼下成中文 在之前的範例裡,示範了如何用coroutine做一次性的網路請求,並交結果post給liveData,讓ui可以觀察(one sho...

鐵人賽 Mobile Development DAY 12

技術 day12 輕鬆一下,用 coroutine 接個 restful api

鑒於我文章越寫越長,偏離了我原本想讓人輕鬆閱讀的感覺,決定寫個新手實用,以coroutine接個restful api的例子,如果你已經很會接了,這篇完全可以跳...

鐵人賽 Mobile Development DAY 14

技術 day14 channel實戰使用 with webSocket,後面離題講android接localhost

前言,今天寫一寫就離題了QQ,前面用ktor架websocket,在手機app接起來,複習一下channel的特性,後面離題講了手機怎麼接到localhost...

鐵人賽 Mobile Development DAY 18

技術 day18 kotlin - flow基本操作

我會從文檔中挑幾個重要的出來講,但不會是全部,我會著重一些基本的中間操作,異常,取消,dispatcher文檔doc 首先,之前看過的影片分享了RxJava和F...

鐵人賽 Mobile Development DAY 29

技術 Leftover topics

我們終於來到第廿九篇,我們這次討論的題目都是之前討論過的東西的延伸。因為篇幅和時間有限就只好把它們合併成一篇。 Two-way data binding 我們在...

鐵人賽 Mobile Development DAY 7

技術 day7 我不要了,這不是肯德基 cancel

Cancellation is important for avoiding doing more work than needed which can was...

鐵人賽 Mobile Development DAY 28

技術 day28 等一下啦,會壞掉的/// Coroutine併發操作的重複請求

沒有要開車,參賽規定有寫不能污言穢語,等我有空再去其他平台寫個開車系列的coroutine 這裡給個快轉,android開發者從1開始看,ktor從2開始看 如...

鐵人賽 Software Development DAY 24
Coroutine 停看聽 系列 第 24

技術 Day24:Hot flow - State Flow (part II)

前一篇文章中,我們介紹了 State Flow 以及它的使用方式,本篇將繼續討論 State Flow。 我們知道 SharedFlow 有提供一個函式能夠讓一...

鐵人賽 Mobile Development DAY 30

技術 day30 Kotlin coroutine 結賽統整

有人說作為新手不好理解,我覺得蠻正常的,一來我中文其實不好,二來要理解新概念只用看的其實不夠,最好是動手寫code,將理解的概念自己用code呈現出來,這時概念...

鐵人賽 Software Development DAY 23
Coroutine 停看聽 系列 第 23

技術 Day23:Hot Flow - StateFlow

State Flow 是從 Shared Flow 繼承而來的,跟 Shared Flow 不同的地方在於它是有初始值的,至少會重播一個值給訂閱者,所以它最少會...

鐵人賽 Mobile Development DAY 24

技術 day24 stateflow和shareflow是如何取代livedata的,聊聊use case吧!!

記得我們說的特性吧,stateflow會在舊值和新值相同的情況下不做更新,但有時我們需要在每次retry某些動作,比如重新連線、重新載入等等 這時,我們就需要用...

鐵人賽 Mobile Development DAY 11

技術 day11 Kotlin coroutine 花生什麼事?

前面我講10篇了,告訴你們coroutine是什麼,怎麼用,如何切thread,和她背後發生什麼事 其實有人要我寫那些內建的suspend function,但...

鐵人賽 Software Development DAY 6
Coroutine 停看聽 系列 第 6

技術 Day6:三大要素

好的好的,經過了前幾篇文章之後,想必大家應該對 Coroutine 有一些了解了吧,我在這邊快速複習一下。 Coroutine 是用來解決非同步程式的執行問題,...