程式架構採用 android + mvvm + compose + Clean architecture,網路呼叫使用 ktor + serialization
無障礙筆記 App - 程式架構藍圖
我們將嚴格遵循「Clean Architecture」的核心原則——關注點分離 (Separation of Concerns),將 App 劃分為三個獨立的層次。
依賴關係規則:外層可以依賴內層,但內層絕對不能知道外層的存在。
UI 層 → 領域層 ← 資料層
(UI 層和資料層都依賴於領域層)
1. `:app` (Android Application Module)
2. `:domain` (Kotlin Library Module)
3. `:data` (Android Library Module)
依賴關係圖: :app → :domain ← :data
架構設定完成!
我們已經成功地:
1. 建立了 :domain 和 :data 兩個新的 Gradle 模組。
2. 為每個模組設定了對應的 build.gradle.kts 檔案和源碼資料夾。
3. 在 libs.versions.toml 中加入了所有必要的依賴庫 (DataStore, Room, Ktor)。
4. 設定了正確的模組間依賴關係 (:app → :domain ← :data)。
現在,我們的專案已經具備了一個清晰、可擴展的 Clean Architecture 基礎。
接下來,我建議我們從最底層的資料層開始,逐步向上建構。第一步是定義我們核心的資料模型 (Entities) 和 Room 資料庫的結構。