Skip to main content
  • About me
  • Some Thing
  • 首頁

Archive for 7 月 2025

  • Hilt 指南 組內分享

    2025-07-26

    市場上已經很多依賴注入套件(dagger , koin)的選擇 ,還有很多文章介紹了,我會選擇 hilt 很單純,就是對於各類 mvvm 的物件,有魔法般的支援,真的少非常多代碼,選擇hilt 並非絕…

    read more
  • handle all repostiory operation that out of Composable/ViewModel scope

    2025-07-21

    作法一:async + await(我要結果,但任務不能停) 這招的核心是「分離執行與等待的生命週期」。Repository 接受一個長壽的 externalScope,用 async 把任務丟進去獨…

    read more
  • Difference between constructors and init in kotlin

    Difference between constructors and init in kotlin

    2025-07-17

    原文 誰負責「定義」?誰負責「執行」? 在 Kotlin 中,Object 創建是個有順序的過程。constructor 和 init block 是關鍵成員,各自有明確職責。搞不清這點,可能導致初始…

    read more
  • Jetpack Compose: 何時該用 derivedStateOf?

    Jetpack Compose: 何時該用 derivedStateOf?

    官方導讀 derivedStateOf 是一個效能優化工具,專門用來防止因「來源狀態」變化過於頻繁而導致的**「不必要的 UI 重組 (Recomposition)」。。 1. 衍生 一個常見的範例開…

    read more
  • viewModelScope vs rememberCoroutineScope 其實沒啥好 versus ,就是 SOC 職責分離

    viewModelScope vs rememberCoroutineScope 其實沒啥好 versus ,就是 SOC 職責分離

    2025-07-15

    viewModelScope:與 ViewModel 的生命週期綁定,只能用在資料/邏輯層。 rememberCoroutineScope:與 Composable 畫面元件的生命週期綁定,只能用在 …

    read more
  • SupervisorJob 不就是 viewModelScope嗎?

    SupervisorJob 不就是 viewModelScope嗎?

    2025-07-14

    Job 不僅僅是 launch 的回傳值,它是我們管理 Coroutine 的「遙控器」。 Job : Job 是最基本的協定,它遵循嚴格的「結構化併發」原則。 特性:「一損俱損」。 在一個由標準 J…

    read more
  • fun GameScreen(gameViewModel: GameViewModel = GameViewModel()) 這樣寫有啥問題?

    fun GameScreen(gameViewModel: GameViewModel = GameViewModel()) 這樣寫有啥問題?

    直接 new GameViewModel() Kotlin class GameViewModel : ViewModel() { var score by mutableStateOf(0) ini…

    read more
  • 麻煩 ViewModelProvider.Factory 你了,因為系統不讓我直接 new 一個 ViewModel

    麻煩 ViewModelProvider.Factory 你了,因為系統不讓我直接 new 一個 ViewModel

    這個規範是為了解決 Android 元件生命週期不一致所帶來的大問題。 ## 保險箱 開發者 Activity/Fragment (UI 控制器):是您的「錢包」。您隨身帶著它,但它可能隨時會遺失、被…

    read more
  • analyze
  • android
  • Camera
  • dagger
  • debug
  • Facebook
  • FMRadio
  • Funny Vote
  • greendao
  • ios
  • java
  • kotlin
  • lib
  • MVP
  • overlay
  • plug
  • react native
  • retrofit2
  • SLAM
  • software
  • 整理
  • 書本
  • 未分類
  • 爛裝置也想跑AI
  • 老文
  • 2025 年 11 月
  • 2025 年 10 月
  • 2025 年 9 月
  • 2025 年 8 月
  • 2025 年 7 月
  • 2025 年 6 月
  • 2025 年 5 月
  • 2025 年 4 月
  • 2025 年 3 月
  • 2025 年 2 月
  • 2025 年 1 月
  • 2024 年 7 月
  • 2024 年 4 月
  • 2022 年 3 月
  • 2021 年 9 月
  • 2021 年 5 月
  • 2017 年 4 月
  • 2017 年 2 月
  • 2016 年 12 月
  • 2016 年 11 月
  • 2016 年 10 月
  • 2016 年 9 月
  • 2016 年 8 月
  • 2016 年 7 月
  • 2016 年 6 月
  • 2016 年 4 月
  • 2016 年 3 月
  • 2016 年 2 月
  • 2016 年 1 月
  • 2015 年 11 月
  • 2015 年 10 月
  • 2015 年 9 月
  • 2015 年 8 月
  • 2015 年 7 月
  • 2015 年 6 月
  • 2015 年 5 月
  • 2015 年 3 月
  • 2015 年 2 月
  • Kotlin 如何預防 Launch 連發,搜尋任務
  • Compose 三階段渲染管線
  • inline, noinline, crossinline:存在即合理
  • DisposableEffect 與 LifecycleEventObserver
  • CreationExtras.inventoryApplication() 這有點跳
Select a menu in the customizer
Blog Layouts WordPress Theme created by Rico