<?php
/** *
* 橋接模式:
* 如 論壇給使用者傳送站內信 手機 sms資訊 ,資訊的程度分為普通 加急 緊急 三種不同的程度;
* */
#第一種情況 不考慮使用橋接模式的情況下,普通模式,我們會這麼寫;
/*inte***ce msg
class znmsg implements msg
}class smsmsg implements msg
}class phonemsg implements msg
}#然後因為資訊的程度分為普通 加急 緊急 三種不同的程度,所以這樣;
class commonznmsg extends znmsg
}class warnznmsg extends znmsg
}class dangerznmsg extends znmsg}*/
//$methods = get_class_methods('commonznmsg');
//$propertities = get_class_vars('commonznmsg');
//var_dump($propertities);
//對於以上這種設計模式,明顯是不合理的,3*3 相當於有9種情況;如果再多一種情況,那明顯就27種情況了;所以下面我們使用
//橋接模式,很明顯可以改善這種情況;
#第二種情況,使用橋接模式;
inte***ce msg
class znmsg implements msg
}class smsmsg implements msg
}class phonemsg implements msg
}abstract class info
abstract function msg($content);
public function sendmsg($name,$content)
}class commoninfo extends info
}class warninfo extends info
}class dangerinfo extends info
}$zn = new dangerinfo(new znmsg());
$zn->sendmsg('小豬','要好好努力啊!');
$zn = new commoninfo(new znmsg());
$zn->sendmsg('小豬','要好好努力啊!');
PHP設計模式之橋接模式
生活場景引入 現在的生活都離不開手機,手機中又有不同的品牌,小公尺,華為,三星,蘋果。每一種手機的設計又不一樣,比如最開始的翻蓋手機,直板手機,到現在的全面屏手機,假如現在的每個手機廠商都是最開始從翻蓋手機做起,雖然手機的樣子不一樣,但是手機的主要功能還是沒有變的,開機,打 發簡訊,關機 這些個最基...
PHP設計模式 橋接模式
程式開發中,我們面對不同的資訊 m種資訊,用不通的工具 n種工具 傳送,按照單一職責原則,我們可能需要使用m n種類來完成此項功能,這樣會使程式顯得非常臃腫,所以,需要用一種方式來完成此項工作 橋接模式 原理 把傳送工具 傳送器 當做乙個父類的乙個屬性來呼叫傳送工具中的方法,來進行訊息傳送。方法一 ...
設計模式之橋接模式
public class test 兩個維度 乙個是具體產品,如狗 豬 乙個是抽象產品,如溫順的動物 冷酷的動物 排列組合 如溫順的狗 冷酷的豬等 abstract class animal 該橋接類的引入是關鍵 abstract class animalbridge extends animal ...