🎯 什麼情境該想到我

當你「想讓呼叫端只依賴介面、不依賴具體實作」的時候。

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

意圖:把介面與其實作放在不同套件/模組,降低相依。

做法要點:

  • 在使用端所在(或獨立)的套件定義介面,實作放另一個套件。
  • 呼叫端只 import 介面套件,執行期才接上實作(常搭配工廠、外掛或注入)。
  • 可讓相依方向反過來:實作依賴介面,而非使用端依賴實作。

🧪 我實際套用的紀錄

  • (待填)

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

  • 會多出間接層,簡單情況下未必划算。
  • 需搭配某種機制在執行期取得實作(外掛、工廠、登錄器等)。
  • 只有當跨套件相依真的造成問題時才用,別為分離而分離。

🔗 相關工具