作者: booch
-
Jetpack Compose: 何時該用 derivedStateOf?

官方導讀 derivedStateOf 是一個效能優化工具,專門用來防止因「來源狀態」變化過於頻繁而導致的**…
-
viewModelScope vs rememberCoroutineScope 其實沒啥好 versus ,就是 SOC 職責分離

viewModelScope:與 ViewModel 的生命週期綁定,只能用在資料/邏輯層。 remember…
-
SupervisorJob 不就是 viewModelScope嗎?

Job 不僅僅是 launch 的回傳值,它是我們管理 Coroutine 的「遙控器」。 Job : Job…
-
Compose 預設參數陷阱:直接 new ViewModel 到底在底層犯了什麼忌諱?

直接 new GameViewModel() class GameViewModel : ViewModel(…
-
麻煩 ViewModelProvider.Factory 你了,因為系統不讓我直接 new 一個 ViewModel

這個規範是為了解決 Android 元件生命週期不一致所帶來的大問題。 ## 保險箱 ** 開發者** Act…
-
Android 爛裝置想跑人臉辨識5 – GC 是唯一會關心你 OOM 的好人

在 Android 上搞高負載應用的工程師,每個人都跟 OOM(Out Of Memory)打過交道。不如說自…
-
Android 爛裝置想跑人臉辨識4 – 記憶體控場師LMKD

《殺的不是 Process,是我的幹話時間》 【你以為關掉幾個沒用的 system service 就解決了?…
-
Thread 和 Coroutine 的現代理解:別再為 CPU 密集任務隨意 new Thread

參考文章 簡單來說,Thread (執行緒) 是由作業系統 (OS) 來管理和調度的,而 Coroutine …
-
The Clean coder: 無瑕的程式碼 番外篇 – 書摘心得

之前看完 無暇的程式碼 本篇,深深覺得這作者一定曾在職場上會被玩過好幾輪(如果是在台灣的話),雖然裡面的內容很…
-
Clean code: 無瑕的程式碼 – 書摘心得(二)

程式與程式的邊界,第三方函式庫總是希望功能越強,但是總要有個邊界,才不會無限延伸。進而反被控制 承 Clean…