🎯 什麼情境該想到我
當你「需要在領域物件和訊息之間雙向搬移資料,又不想讓兩邊互相知道對方存在」的時候。
⚙️ 怎麼用(步驟 / 公式)
意圖:在領域物件與訊息之間做雙向對應,且對應邏輯獨立於兩者之外,領域物件與訊息彼此不知道對方。
做法 / 結構要點:
- 建立獨立的 Mapper,負責「領域物件 → 訊息」與「訊息 → 領域物件」的轉換。
- 領域物件不含任何訊息相關程式碼,訊息也不依賴領域類別。
- 由 Mapper(或呼叫它的層)處理型別、欄位、格式的映射。
🧪 我實際套用的紀錄
- (待填)
⚠️ 注意 / 什麼時候不適用
- 類似 ORM 資料對應的概念,但對象是訊息。
- 對應規則變動時集中在 Mapper 一處維護。
- 避免把商業規則放進 Mapper,它只做結構轉換。
🔗 相關工具
- 訊息閘道 Messaging Gateway(同家族,封裝訊息收發的方法介面)
- 標準資料模型 Canonical Data Model(對應的目標常是中立資料模型)
- 企業整合模式