介面卡模式

2021-09-24 05:28:57 字數 530 閱讀 3720

在軟體開發中,經常會遇到這樣的問題:

有乙個舊系統,我們要對它進行重構,內部的依賴性和複雜性很高,牽一髮而動全身,如何對其改造這些做到影響最少?

我們要開發新系統去整合舊系統(第三方系統),舊系統的**和功能不允許改變,新系統應如何適配舊系統的介面完成對接?

介面卡模式使乙個介面轉換為客戶希望的另乙個介面,使介面不相容的那些類可以一起工作。

根據適配物件的不同,分為兩種型別:

目標:客戶期待得到的介面。可以是抽象或具體的類、或介面。

源:當前存在的、要適配的類。可以是抽象或具體的類、或介面。

介面卡:把源介面轉換為目標介面。只能是類。

介面卡的本質是:轉換匹配、復用功能。它是一種補償模式,通常用來解決介面不相容的問題。

以下場景比較適用:

你想使用乙個已存在的類,但是它的介面不符合你的需求。

你想建立乙個可以復用的類,這個類可能和一些不相容的類一起工作。

你想使用一些已經存在的子類,但是不可能對每乙個子類都進行適配。

介面卡模式(類介面卡 物件介面卡)

做個筆記 引用 public inte ce usb public inte ce psp public class usber implements usb 類介面卡 psp適用usb介面 public class usbadapter extends usber implements psp 物...

介面卡模式 預設介面卡,類介面卡,物件介面卡

模式思想 改變乙個類的對外介面 增加或減少 以滿足不同外部呼叫者的需求 角色成員 目標介面 target 客戶所期待的介面。目標可以是具體的或抽象的類,也可以是介面。需要適配的類 adaptee 需要適配的類或適配者類。介面卡 adapter 通過包裝乙個需要適配的物件,把原介面轉換成目標介面。適配...

設計模式 介面卡模式 類介面卡 物件介面卡

乙個小例子,便於理解,上 這是我們造的。現在想用這個方法。public class adaptee 類介面卡。對我們想要的方法封裝一下,target就能像之前一樣,呼叫request方法即可。public class adapter1 extends adaptee implements targe...