🎯 什麼情境該想到我

當你「想把輸入處理、畫面顯示、資料與邏輯三者分離,讓它們各自獨立變動」的時候。

⚙️ 怎麼用(步驟 / 公式)

意圖:把使用者介面拆成三個角色,降低耦合、便於各自替換與測試。

做法要點:

  • 模型(Model):領域資料與邏輯,不知道 UI 的存在。
  • 視圖(View):把模型呈現到畫面,只負責顯示。
  • 控制器(Controller):處理使用者輸入,操作模型並選擇要顯示的視圖。
  • 關鍵是把「輸入的處理」(控制器)和「輸出的呈現」(視圖)分開。

🧪 我實際套用的紀錄

  • (待填)

⚠️ 注意 / 什麼時候不適用

  • 對很簡單的畫面而言,三分拆會顯得過度。
  • 原始的視圖觀察模型機制在 Web 無狀態環境下未必適用(多改為請求驅動)。
  • 團隊需理解職責邊界,否則邏輯容易又漏回視圖或控制器。

🔗 相關工具