黃德銘inDcard Tech BlogDcard Android FragmentResult 架構介紹 (2) — 使用 Kotlin Class Delegation 自動產生 FragmentTag 並註冊 Callback上一篇介紹了我們如何使用 Kotlin Property Delegation 減少許多重複的 code 並讓取得 callback 簡化許多,最後也提出 3 個可以優化的方向,這次就要介紹我們如何利用 Kotlin Class Delegation 來達成這個目標。Jul 13, 20231Jul 13, 20231
黃德銘inDcard Tech BlogDcard Android FragmentResult 架構介紹 (1) — 使用 Kotlin Property Delegation 讓 DialogFragment 取得 CallbackConfiguration change 對於 Android Developer 來說一直是個重要的議題,手機畫面旋轉、後來推出的 Dark Mode 以及在 Android 13 推出個別應用程式語言偏好,這些變動都增加 configuration change…May 30, 2023May 30, 2023
黃德銘Flow 可以直接取代 LiveData 嗎這個問題其實很有趣,至今聽到這個問題好幾次,但很少看到比較詳細的理由,敝公司內部 Android Team 的讀書會在 2022 年 Q2 有討論過這件事,至今我們還是使用 LiveData 做為跟 View 溝通的工具,剛好在 Android…Jan 6, 2023Jan 6, 2023
黃德銘inDcard Tech BlogAndroid 寫測試系列 (5) — 對 ViewModel 寫測試上一篇介紹了如何對 Singleton 物件寫測試,也介紹如何清除 Singleton 持有的資料,這次想介紹要如何對 Google 所推的 MVVM 架構中的 ViewModel 寫測試,在 Google 所推的 ViewModel 中其實已經有了…Dec 20, 2022Dec 20, 2022
黃德銘inDcard Tech BlogAndroid 寫測試系列(4) — 對 Singleton 物件寫測試上一篇介紹了如何對擁有 CoroutineScope 的物件撰寫測試,並介紹了一個我自己寫的 extension waitForJobsToFinish,用了這個 extension 後可以幫助我們減少使用 delay…Oct 7, 2022Oct 7, 2022
黃德銘inDcard Tech BlogAndroid 寫測試系列 (3) — 對擁有 CoroutineScope 物件寫測試上一篇介紹了 BDD 以及如何對一般物件寫測試,讓我們可以開始為了提高程式穩定性做準備。而上一篇的情境較為簡單,用了 suspend function 可以解決 call 單支 api 的需求,但有時候我們需要同時處理多個異步需求,這時候使用 withContext()…Aug 12, 2022Aug 12, 2022
黃德銘inDcard Tech BlogAndroid 寫測試系列 — BDD 介紹和一般物件寫測試上一篇有簡單介紹了 MockK,這篇會介紹 Kotest 的 DescribeSpec ,利用 DescribeSpec 的特性可減少在設定環境時重複的程式碼,並設定情境來對一般物件撰寫測試,希望大家能夠更加了解要怎麼撰寫測試。Apr 26, 2022Apr 26, 2022
黃德銘inDcard Tech BlogAndroid 寫測試系列 — MockK 介紹以前介紹過 Android 的測試 Framework Kotest,接著想介紹如何利用 Kotest 撰寫不同類型的測試,其中包含一般物件、Singleton 物件、Coroutine 非同步以及 ViewModel,會由淺入深從 mock…Apr 8, 2022Apr 8, 2022
黃德銘inDcard Tech BlogAndroid Testing Framework 介紹 - Kotest身為軟體工程師的我,在遇到問題時總會思考是否能將解答自動化以減少未來的使用成本,以軟體來說在開發新功能解決所遇到的問題後,可以額外撰寫自動化測試來減少人工測試及未來維護的成本。Aug 3, 2021Aug 3, 2021