介面卡模式的作⽤是解決兩個軟體實體間的接⼝不相容的問題。使⽤介面卡模式之後,原本 由於
個相對簡單的模式。在程式開發中有許多這樣的 場景:當我們試圖調⽤模組或者物件的某個接⼝
時,卻發現這個接⼝的格式並不符合⽬前的需求。 這時候有兩種解決辦法,第⼀種是修改原來的
接⼝實現,但如果原來的模組很複雜,或者我們拿 到的模組是⼀段別⼈編寫的經過壓縮的**,
修改原接⼝就顯得不太現實了。第⼆種辦法是建立 ⼀個介面卡,將原接⼝轉換為客戶希望的另⼀
個接⼝,客戶只需要和介面卡打交道。
var googlemap =
};var baidumap =
};var baidumapadapter =
};rendermap( googlemap ); // 輸出:開始渲染⾕歌地圖
介面卡模式主要⽤來解決兩個已有接⼝之間不匹配的問題,它不考慮這些接⼝是怎樣實 現的,也不考慮
它們將來可能會如何演化。介面卡模式不需要改變已有的接⼝,就能夠 使它們協同作⽤。
裝飾者模式和**模式也不會改變原有物件的接⼝,但裝飾者模式的作⽤是為了給物件 增加功能。裝飾
者模式常常形成⼀條⻓的裝飾鏈,⽽介面卡模式通常只包裝⼀次。** 模式是為了控制對物件的訪問,
通常也只包裝⼀次。
我們設計很多外掛,有預設值,也算是介面卡的⼀種應⽤, vue的prop校驗,default也算是介面卡的
應⽤了外觀模式的作⽤倒是和介面卡⽐較相似,有⼈把外觀模式看成⼀組物件的介面卡,但外觀模式最顯著的
特點是定義了⼀個新的接⼝。