結(jié)構(gòu)型模式-橋接模式

標(biāo)簽(空格分隔):橋接模式


橋接模式: 將抽象部分與它的實(shí)現(xiàn)部分分離,使它們都可以獨(dú)立的變化

由于對(duì)象的繼承關(guān)系是在編譯的時(shí)候確認(rèn)的,所以不能做到在運(yùn)行時(shí)改變父類繼承的實(shí)現(xiàn)。同時(shí),子類的實(shí)現(xiàn)必須在父類的基礎(chǔ)上進(jìn)行,和父類有相當(dāng)緊密的依賴關(guān)系。這樣就導(dǎo)致父類一旦有功能變化的時(shí)候都會(huì)導(dǎo)致子類同時(shí)發(fā)生變化,此時(shí)如果繼承下父類的實(shí)現(xiàn)不適合解決新問(wèn)題的時(shí)候,子類就必須重寫(xiě)自己對(duì)應(yīng)的實(shí)現(xiàn),或者選擇繼承其他更貼合自己業(yè)務(wù)場(chǎng)景的類作為自己的父類。這種子父關(guān)系自己的相互依賴關(guān)系導(dǎo)致了一個(gè)功能的變化可能會(huì)造成相當(dāng)大的業(yè)務(wù)變化。

橋接模式主要解決:子類需要繼承的父類是一個(gè)不穩(wěn)定狀態(tài)的類,功能極有可能發(fā)生變化且這種變化是不可控的,這個(gè)時(shí)候使用繼承會(huì)導(dǎo)致類的變動(dòng)頻繁,出現(xiàn)類爆炸問(wèn)題,這個(gè)時(shí)候,使用橋接模式,將其分離開(kāi)來(lái),減少他們之間的耦合關(guān)系。

優(yōu)點(diǎn):將對(duì)象之間的抽象和實(shí)現(xiàn)分離開(kāi),讓抽象也成為可獨(dú)立可實(shí)現(xiàn)的部分,增加系統(tǒng)的擴(kuò)展能力。

VMWare虛擬機(jī)中就存在橋接模式(bridged networking),在這種模式下,VMWare虛擬出來(lái)的操作系統(tǒng)脫離與宿主機(jī)器之間的父子關(guān)系,就像是局域網(wǎng)中的一臺(tái)獨(dú)立的主機(jī),虛擬機(jī)不必依賴宿主系統(tǒng)的IP/DNS功能。它可以訪問(wèn)網(wǎng)內(nèi)任何一臺(tái)機(jī)器。橋接模式將虛擬系統(tǒng)脫離出來(lái),由原有的繼承狀態(tài)(Nat模式,虛擬系統(tǒng)必須通過(guò)宿主系統(tǒng)中的網(wǎng)絡(luò)地址轉(zhuǎn)換Nat功能來(lái)訪問(wèn)公網(wǎng))獨(dú)立出來(lái),轉(zhuǎn)換為和宿主機(jī)器一樣的獨(dú)立的個(gè)體,改為被宿主機(jī)器持有。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容