日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

JAVA設(shè)計模式:適配器模式

系統(tǒng) 2051 0

c. 適配器模式

我的筆記本是港貨,它的插頭與我們常用的插座不一樣,所有我出差的時候我必須帶一個適配器,才能使用不同地方的插座。這是一個對適配器模式最經(jīng)典的描述。當(dāng)我們設(shè)計的系統(tǒng)要與其它系統(tǒng)交互,或者我們設(shè)計的模塊要與其它模塊交互時,這種交互可能是調(diào)用一個接口,或者交換一段數(shù)據(jù),接受方常常因發(fā)送方對協(xié)議的變更而頻繁變更。這種變更,可能是接受方來源的變更,比如原來是 A 系統(tǒng),現(xiàn)在變成 B 系統(tǒng)了;也可能是接受方自身的代碼變更,如原來的接口現(xiàn)在增加了一個參數(shù)。由于發(fā)送方的變更常常導(dǎo)致接受方代碼的不穩(wěn)定,即頻繁跟著修改,為接受方的維護帶來困難。

遇到這樣的問題,一個有經(jīng)驗的程序員馬上想到的就是采用適配器模式。在設(shè)計時,我方的接口按照某個協(xié)議編寫,并且保持固定不變。然后,在與真正對方接口時,在前段設(shè)計一個適配器類,一旦對方協(xié)議發(fā)生變更,我可以換個適配器,將新協(xié)議轉(zhuǎn)換成原協(xié)議,問題就解決了。適配器模式應(yīng)當(dāng)包含一個接口和它的實現(xiàn)類。接口應(yīng)當(dāng)包含一個本系統(tǒng)要調(diào)用的方法,而它的實現(xiàn)類分別是與 A 系統(tǒng)接口的適配器、與 B 系統(tǒng)接口的適配器...

?

?


JAVA設(shè)計模式:適配器模式
?

?

我曾經(jīng)在一個項目中需要與另一個系統(tǒng)接口,起初那個系統(tǒng)通過一個數(shù)據(jù)集的方式為我提供數(shù)據(jù),我寫了一個接收數(shù)據(jù)集的適配器;后來改為用一個 XML 數(shù)據(jù)流的形式,我又寫了一個接收 XML 的適配器。雖然為我提供數(shù)據(jù)的方式不同,但是經(jīng)過適配器轉(zhuǎn)換后,輸出的數(shù)據(jù)是一樣的。通過在 spring 中的配置,我可以靈活地切換到底是使用哪個適配器。

JAVA設(shè)計模式:適配器模式


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 图木舒克市| 那曲县| 家居| 木里| 梁山县| 资源县| 中方县| 会东县| 衡阳市| 博野县| 龙陵县| 泰州市| 曲周县| 高州市| 法库县| 芜湖市| 凭祥市| 山西省| 夏津县| 玛多县| 辉南县| 金沙县| 江华| 海宁市| 仙桃市| 五家渠市| 二手房| 苗栗市| 建德市| 云梦县| 陆河县| 天长市| 将乐县| 新营市| 富民县| 荣成市| 棋牌| 会东县| 通河县| 都兰县| 吉林市|