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

kotlin

  • 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
  • Thread 和 Coroutine 的理解

    2025-05-17

    參考文章 簡單來說,Thread (執行緒) 是由作業系統 (OS) 來管理和調度的,而 Coroutine (協程) 的控制權則在我們開發者手上,由程式語言的執行環境 (Runtime) 在使用者層…

    read more
  • id(“org.kotlin.xxxx”) version “2.1.0” apply false  這不要你還特地寫上去啊?.

    id(“org.kotlin.xxxx”) version “2.1.0” apply false 這不要你還特地寫上去啊?.

    2025-02-14

      假設我們的專案 MyPlayerApp 是一個音樂播放器,它有三個模組: app: 主應用程式模組,包含 UI 畫面。(需要 Compose) feature_playlist: 播放清單功能的模…

    read more
  • lateinit vs lazy

    2024-07-21

    lateinit:var 給別人初始化的承諾 最適合用在生命週期或依賴注入,當你確定某個外部力量會幫你搞定初始化時: Kotlin lateinit var adapter: RecyclerView…

    read more
« Previous
1 2
  • 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