php 實現工廠方法模式原始碼

2021-09-11 01:42:48 字數 624 閱讀 3300

工廠模式使用場景

* 1.在**執行時我們才知道要生成物件型別

* 2.我們需要能夠相對輕鬆地加入一些新的產品功能

* 3.每乙個產品型別都能定製特定的功能

* 工廠方法模式能讓我們用繼承和多型來封裝具體產品的建立

工廠方法:

<?php

//資料編碼器類(product)產品類

abstract function encode();

}//日曆格式的編碼器

function encode()

}//mega格式的編碼器

function encode()

}//管理員類(creator)建立者類

abstract class commsmanager

//日曆管理員類

class bloggscommsmanager extends commsmanager

} function getfootertext()

}//mega管理員類

class megacommsmanager extends commsmanager

} function getfootertext()

}

php工廠方法模式

clevercode最近在看工廠方法模式。定義乙個用於建立物件的介面,讓子類決定例項化哪乙個類,工廠方法使乙個類的例項化延遲到其子類。2.1 抽象工廠 creator 角色 是工廠方法模式的核心,與應用程式無關。任何在模式中建立的物件的工廠類必須實現這個介面。2.2 具體工廠 concrete cr...

工廠方法模式 工廠方法模式

工廠方法模式是簡單工廠模式的公升級版,簡單工廠模式不符合設計模式的原則 即 單一職責,開閉原則 優點 職責明確,擴充套件方便 缺點 需要建立多個工廠 實現步驟 1.將工廠通用方法抽取介面 例如 ifactory 2.將產品抽取介面 例如 icar 3.實現各種產品 例如 baomacar,benti...

PHP設計模式 工廠方法

宣告 本系列部落格參考資料 大話設計模式 作者程杰。前面我們介紹了簡單工廠,今天我們繼續學習另外乙個工廠 工廠方法。具體案例 請mm去麥當勞吃漢堡,不同的mm有不同的口味,要每個都記住是一件煩人的事情,我們一般採用factorymethod模式,帶著mm到服務員那兒,說 要乙個漢堡 具體要什麼樣的漢...