成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

PHP 設(shè)計(jì)模式之——適配器模式

周國(guó)輝 / 2990人閱讀

摘要:適配器模式只要應(yīng)用于希望復(fù)用一些現(xiàn)存的類,但接口又與復(fù)用環(huán)境要求不一致的情況這是一種亡羊補(bǔ)牢的方法。首選的方法應(yīng)該是重構(gòu)代碼,統(tǒng)一接口。

定義

將某個(gè)對(duì)象的接口適配為另一個(gè)對(duì)象所期望的接口,adapter模式使原本由于接口不兼容而不能一起工作的類可以一起工作

使用場(chǎng)景

需要的東西在面前,但卻不能用,而短時(shí)間又無(wú)法改造它,于是就想辦法適配

系統(tǒng)的數(shù)據(jù)和行為都正確,但接口不符時(shí),應(yīng)該考慮使用適配器,目的是使控制范圍之外的一個(gè)原有對(duì)象與某個(gè)接口匹配。適配器模式只要應(yīng)用于希望復(fù)用一些現(xiàn)存的類,但接口又與復(fù)用環(huán)境要求不一致的情況

這是一種“亡羊補(bǔ)牢”的方法。

首選的方法應(yīng)該是重構(gòu)代碼,統(tǒng)一接口。

用于 兩個(gè)類功能相同或相似

在項(xiàng)目中需要使用第三方組件時(shí),常用到此模式

事后控制不如事中控制,事中控制不如事前控制

#原始類,用戶期望的接口
class Target{
    public function connect(){
        return "普通連接成功";
    }
}
#需要被適配的類
class Adaptee{
    public function specificConnect(){
        reutrn "特殊連接成功";
    }
}
#適配器
class Adapter extends Target{
    private $Adaptee = new Adaptee();
    public function connect (){
        $Adaptee->SpecificConnect();
    }
}
#***************客戶端****************
#適配前
$Target = new Target();
echo $Target->connect();
#適配后
$Target = new Adapter();
echo $Target->connect();

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/23155.html

相關(guān)文章

  • php設(shè)計(jì)模式

    摘要:我們今天也來(lái)做一個(gè)萬(wàn)能遙控器設(shè)計(jì)模式適配器模式將一個(gè)類的接口轉(zhuǎn)換成客戶希望的另外一個(gè)接口。今天要介紹的仍然是創(chuàng)建型設(shè)計(jì)模式的一種建造者模式。設(shè)計(jì)模式的理論知識(shí)固然重要,但 計(jì)算機(jī)程序的思維邏輯 (54) - 剖析 Collections - 設(shè)計(jì)模式 上節(jié)我們提到,類 Collections 中大概有兩類功能,第一類是對(duì)容器接口對(duì)象進(jìn)行操作,第二類是返回一個(gè)容器接口對(duì)象,上節(jié)我們介紹了...

    Dionysus_go 評(píng)論0 收藏0
  • php設(shè)計(jì)模式

    摘要:我們今天也來(lái)做一個(gè)萬(wàn)能遙控器設(shè)計(jì)模式適配器模式將一個(gè)類的接口轉(zhuǎn)換成客戶希望的另外一個(gè)接口。今天要介紹的仍然是創(chuàng)建型設(shè)計(jì)模式的一種建造者模式。設(shè)計(jì)模式的理論知識(shí)固然重要,但 計(jì)算機(jī)程序的思維邏輯 (54) - 剖析 Collections - 設(shè)計(jì)模式 上節(jié)我們提到,類 Collections 中大概有兩類功能,第一類是對(duì)容器接口對(duì)象進(jìn)行操作,第二類是返回一個(gè)容器接口對(duì)象,上節(jié)我們介紹了...

    vspiders 評(píng)論0 收藏0
  • PHP設(shè)計(jì)模式配器模式

    摘要:簡(jiǎn)介適配器模式有時(shí)候也稱包裝樣式或者包裝將一個(gè)類的接口適配成用戶所期待的。應(yīng)用場(chǎng)景如程序數(shù)據(jù)庫(kù)有關(guān)聯(lián)等操作,而你需要根據(jù)情況換數(shù)據(jù)庫(kù)操作時(shí),可以使用適配器模式統(tǒng)一接口,這樣代碼中除了數(shù)據(jù)庫(kù)配置之外,就不需要做而外的更改。 簡(jiǎn)介 適配器模式(有時(shí)候也稱包裝樣式或者包裝)將一個(gè)類的接口適配成用戶所期待的。一個(gè)適配允許通常因?yàn)榻涌诓患嫒荻荒茉谝黄鸸ぷ鞯念惞ぷ髟谝黄稹?UML 角色 Tar...

    netScorpion 評(píng)論0 收藏0
  • PHP基礎(chǔ)

    摘要:分別為適配器模式,裝飾器模式,代理模式,外觀模式,橋接模式,組合模式,享元模式。設(shè)計(jì)模式五適配器模式適配器模式將某個(gè)對(duì)象的接生成器和協(xié)程的實(shí)現(xiàn)在這篇文章中,作者針對(duì)那些比較難以理解的概念,以一個(gè)更為通俗的方式去講明白。。 PHP 源碼注解 PHP 的詳細(xì)源碼注解 PHP 字符串操作整理 一些有關(guān)字符串的常用操作。 Redis 常見(jiàn)七種使用場(chǎng)景 (PHP 實(shí)戰(zhàn)) 這篇文章主要介紹利用 R...

    HtmlCssJs 評(píng)論0 收藏0
  • JS14種設(shè)計(jì)模式 (6)

    摘要:序列文章面試之函數(shù)面試之對(duì)象面試之?dāng)?shù)組的幾個(gè)不操作面試之對(duì)比分析面試之?dāng)?shù)據(jù)結(jié)構(gòu)與算法前言設(shè)計(jì)模式如果應(yīng)用到項(xiàng)目中,可以實(shí)現(xiàn)代碼的復(fù)用和解耦,提高代碼質(zhì)量。 showImg(https://segmentfault.com/img/bVbq2VA?w=480&h=260); 序列文章 JS面試之函數(shù)(1)JS面試之對(duì)象(2)JS面試之?dāng)?shù)組的幾個(gè)不low操作(3)JS面試之http0.9~...

    luckyyulin 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

周國(guó)輝

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<