PHP 策略模式詳解

2021-07-22 02:22:24 字數 1011 閱讀 3207

策略模式可用來建立可插入,可替換以及可重用的元件。

其實說簡單一點,就是父類為抽象類,子類(策略類)來具體實現方法

下面是使用了策略模式和不使用策略模式的兩段例項**的區別

<?php

/** * lesson.php

*/class lessons

public function whichlesson()

}}?>

<?php

/** * user.php 客戶端

*/reuquire 'lesson.php';

$lesson = new lessons(lessons::chinese);

echo $lesson->whichlesson();

?>

<?php

/*** lessons.php 父類

*/class

lessons

?>

<?php

/*** chinese.php 策略類

*/class

chinese

extends

lessons

}?>

<?php

/*** biology.php 策略類

*/class

biology

extends

lessons

}?>

<?php

/*** user.php 客戶端

*/require('lessons.php');

require('chinese.php');

require('biology.php');

$lesson = new chinese();

echo $lesson;

?>

-- by vampirebitter

策略模式詳解

策略模式核心點 把每個核心方法邏輯抽象封裝出來,使得程式呼叫結構更加靈活和擴充套件。典型應用就是用來替換程式中過多的if else分支結構。當程式邏輯分支很多時,我們會選擇if else語句或switch case語句來切分,但是這樣的結果往往是程式難以維護,例如下面一段 是根據 包pricecod...

PHP策略模式

個人覺得設計模式只有在實際應用中才能夠慢慢的去熟悉,到最後做到心中有模式,事事有模式,哈哈 例如 乙個電商首頁,可以根據登陸使用者的性別不同顯示不同的內容,比如廣告和商品類別。傳統方法 在程式內部使用多個if,else進行判斷,這樣很難維護,比如我想要再加入乙個人妖使用者!那麼我就要在程式中再加入e...

PHP 策略模式

引言 所屬 行為型模式,常用設計模式之一 學習資料 模式概述 分享一篇關於策略模式講的很好的文章,大家可以參考一下 策略模式就是用來封裝演算法的,但在實踐中,我們發現可以用它來封裝幾乎任何型別的規則,只要在分析過程中聽到需要在不同時間應用不同的業務規則,就可以考慮使用策略模式處理這種變化的可能性。舉...