PHP設計模式學習筆記 3 基本設計模式概念

2021-09-22 02:15:47 字數 1384 閱讀 2466

mvc的特點是:通過檢視和模型之間建立訂閱/通知協議,實現檢視和模型的解耦。從mvc開始討論設計模式中的各種工具,應為大多數設計模式都是與mvc有關的,只有某些部分是與mvc沒關。

ivehicle.php

<?php

inte***ce ivehicle

car.php

<?php

include_once 'ivehicle.php';

class car implements ivehicle

public function ride()

}

bus.php

<?php

include_once 'ivehicle.php';

class bus implements ivehicle

public function ride()

}

trafficbrief.php

<?php

include_once "car.php";

include_once "bus.php";

include_once "ivehicle.php";

class trafficbrief

}$one = new trafficbrief();

$one->brief(new car());

echo "-------------------------\n";

$one->brief(new bus());

is-a:在繼承關係中,子類屬於父類的一部分,相比父類更加具體。

has-a:在組合中,某個類包含了乙個或多個不同的類,這個類向那些被包含的類分派任務(委託),使用它們的方法完成一系列操作。

在選擇設計模式時,需要考慮,具體業務那些部分會發生改變,導致需要重新進行程式設計。

下表展示了常用設計模式,哪些部分改變後不會導致重新設計

作用範圍

模式可變化的部分

建立型類

工廠方法

例項化物件的子類

物件原型

例項化物件的類

結構型類

介面卡物件的介面

物件介面卡

物件職責而不派生子類

行為型類

模板方法

演算法中的步驟

物件狀態

物件狀態

物件策略

演算法物件

責任鏈可以滿足請求的物件

物件觀察者

依賴於其他物件的物件數,當前可以有多少個依賴物件

框架具有指示性,可以清晰的指示解決乙個問題的結構。框架是比設計模式更加具體,應用採用某個框架,就會受這個框架限制,但是應用構建起了簡單。

php 設計模式 學習筆記

php 有如下幾種設計模式 初聽到設計模式可能讓你覺得很抽象,其實設計模式就是對常見程式設計問題的靈活解決方案。1 工廠模式 factory 他之所以被成為工廠模式是因為他負責 生產 物件,看看下面的例子 class factoryelse 你如何呼叫呢 factorymql factory fac...

PHP設計模式學習筆記

當多個地方需要例項化乙個類的時候,為了滿足之後可能需要做修改的可能的時候可以使用工廠模式。即在乙個類中的乙個方法例項化 之後需要修改只要修改該函式即可。資料庫鏈結,單例模式,將建構函式宣告為私有 遮蔽在其他地方例項化資料庫連線,宣告乙個方法建立例項 new self 即定義乙個受保護的屬性陣列,當呼...

Head First設計模式筆記(設配器模式)

設配器模式 將乙個類的介面,轉換成客戶期望的另乙個介面,設配器讓原來介面不相容的類可以合作無間 火雞介面 public inte ce turkey具體的火雞 public class wildturkey implements turkey override public void fly 鴨子介...