一種結構型設計模式,它允許將不兼容的對象轉換成可兼容的接口。主要目的是解決在不改變現有代碼的情況下,使不兼容的接口之間能夠正常工作,通過創建一個中間轉換的適配器來將一個對象轉換成我們所需要的接口。
場景: 當你原來的某個類或接口不想改動,就只想重用現有的代碼;或者現有的某個第三方組件功能提供的輸入輸出格式和你想要的不匹配;還有就是當你想要適配不同平臺或服務商。
主要分為三類:類的適配器模式、對象的適配器模式、接口的適配器模式。
優點:
- 安全可靠:封裝了舊接口,對客戶端透明,客戶端代碼無需修改。
- 提高復用性:可以復用不兼容的類;可以對不同的類無需修改,就可以進行組合。
- 擴展性好:在應用程序開發過程中,可以增加新的適配器和被適配對象。
缺點:
- 過多的適配器會導致系統結構復雜。
- 如果適配器沒有實現好,可能會拖慢整個系統的性能。
- 濫用適配器模式會導致系統設計紊亂。
Reference
適配器設計模式(封裝器模式) (refactoringguru.cn)
設計模式第9講——適配器模式(Adapter)-CSDN博客