開發大型 Flutter 專案的基石
身為一個混合架構團隊,我們今天必須聊聊 Clean Architecture (乾淨架構) 工程思維。
什麼是乾淨架構?
這個理念由 Uncle Bob 提出,它的最核心思想在於「依賴反轉」。 你的 UI 不應該知道你的 API 從哪裡來,你的資料庫也不要去管你的畫面上有什麼按鈕。
- Presentation 層:專心做畫面 (
Widgets,Controllers,Blocs)。 - Domain 層:這是心臟。所有的商業邏輯 (
Entities,UseCases,Repository Interfaces) 都在這裡。 - Data 層:苦力勞動層。去拿外面世界的資料 (
DataSources,Models,Repository Implements)。
為什麼需要解耦?
想像一下:如果某天我們要從 Firebase 搬移到 AWS,如果架構夠乾淨,我們 完全不需要動到 UI 的任何一行程式碼,只需要抽換 Data 層的 Source 即可。這就是架構設計的魔力!