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

資訊專欄INFORMATION COLUMN

PHP 設(shè)計模式之工廠模式 (靜態(tài)工廠模式)

kviccn / 575人閱讀

摘要:工廠模式由工廠類根據(jù)參數(shù)來決定創(chuàng)建出哪一種產(chǎn)品類的實例。工廠類是指包含了一個專門用來創(chuàng)建其他對象的方法的類。工廠模式的最主要作用就是對象創(chuàng)建的封裝簡化創(chuàng)建對象操作。

### 工廠模式:

由工廠類根據(jù)參數(shù)來決定創(chuàng)建出哪一種產(chǎn)品類的實例。工廠類是指包含了一個專門用來創(chuàng)建其他對象的方法的類。所謂按需分配,傳入?yún)?shù)進行選擇,返回具體的類。工廠模式的最主要作用就是對象創(chuàng)建的封裝、簡化創(chuàng)建對象操作。 簡單的說,就是調(diào)用工廠類的一個方法(傳入?yún)?shù))來得到需要的類;
優(yōu)點
工廠類是整個模式的關(guān)鍵.包含了必要的邏輯判斷,根據(jù)外界給定的信息,決定究竟應(yīng)該創(chuàng)建哪個具體類的對象.通過使用工廠類,外界可以從直接創(chuàng)建具體產(chǎn)品對象的尷尬局面擺脫出來,僅僅需要負(fù)責(zé)“消費”對象就可以了。而不必管這些對象究竟如何創(chuàng)建及如何組織的.明確了各自的職責(zé)和權(quán)利,有利于整個軟件體系結(jié)構(gòu)的優(yōu)化。
缺點
由于工廠類集中了所有實例的創(chuàng)建邏輯,違反了高內(nèi)聚責(zé)任分配原則,將全部創(chuàng)建邏輯集中到了一個工廠類中;它所能創(chuàng)建的類只能是事先考慮到的,如果需要添加新的類,則就需要改變工廠類了。

當(dāng)系統(tǒng)中的具體產(chǎn)品類不斷增多時候,可能會出現(xiàn)要求工廠類根據(jù)不同條件創(chuàng)建不同實例的需求.這種對條件的判斷和對具體產(chǎn)品類型的判斷交錯在一起,很難避免模塊功能的蔓延,對系統(tǒng)的維護和擴展非常不利;

";
    }
    public function del($username)
    {
        // TODO: Implement del() method.
    }
    public function edit($username)
    {
        // TODO: Implement edit() method.
    }


}

/**
 * B公司
 * Class Company_B
 */
class  Company_B implements Company
{

    public function add($username)
    {

        echo $username."is add into B
"; } public function del($username) { // TODO: Implement del() method. } public function edit($username) { // TODO: Implement edit() method. } } /** * C公司 * Class Company_C */ class Company_C implements Company { public function add($username) { echo $username."is add into C
"; } public function del($username) { // TODO: Implement del() method. } public function edit($username) { // TODO: Implement edit() method. } } $type = "A"; $company = Factory::create_obj($type); $company->add("趙信"); $type = "B"; $company = Factory::create_obj($type); $company->add("德瑪"); $type = "C"; $company = Factory::create_obj($type); $company->add("皇子");

上面代碼片段將會輸出結(jié)果:

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

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

相關(guān)文章

  • php工廠模式

    摘要:工廠模式概念工廠模式是一種類,它具有為您創(chuàng)建對象的某些方法。使用該工廠的所有代碼會自動更改。 工廠模式概念 工廠模式是一種類,它具有為您創(chuàng)建對象的某些方法。您可以使用工廠類創(chuàng)建對象,而不直接使用 new。這樣,如果您想要更改所創(chuàng)建的對象類型,只需更改該工廠即可。使用該工廠的所有代碼會自動更改。 3中不同的工廠模式 1.簡單工廠模式(靜態(tài)工廠模式):通過靜態(tài)方法來創(chuàng)建對象2.工廠模式:定...

    tainzhi 評論0 收藏0
  • PHP設(shè)計模式工廠模式

    摘要:根據(jù)抽象程度的不同,工廠模式分為三種簡單工廠模式工廠方法模式抽象工廠模式講解簡單工廠模式簡單工廠模式又稱靜態(tài)工廠方法模式,之所以可以這么說,是因為簡單工廠模式是通過一個靜態(tài)方法來創(chuàng)建對象的。他可以解決簡單工廠模式中的封閉開放原則問題。 概念 工廠模式是我們最常用的實例化對象模式,是用工廠方法代替new操作的一種模式。 使用工廠模式的好處是,如果你想要更改所實例化的類名等,則只需更改該工...

    imtianx 評論0 收藏0
  • PHP面試???em>之設(shè)計模式——工廠模式

    摘要:工廠模式其實可以劃分為簡單工廠模式工廠方法模式抽象工廠模式等。簡單工廠模式介紹簡單工廠模式又稱為靜態(tài)工廠方法模式,它屬于類創(chuàng)建型模式。此模式是對工廠方法模式的進一步擴展。 你好,是我琉憶,PHP程序員面試筆試系列圖書的作者。 本周(2019.3.11至3.15)的一三五更新的文章如下: 周一:PHP面試??贾O(shè)計模式——工廠模式周三:PHP面試??贾O(shè)計模式——建造者模式周五:PHP...

    Jiavan 評論0 收藏0
  • php 設(shè)計模式工廠模式、單例模式、注冊樹模式

    摘要:的設(shè)計模式有很多種,本文取最簡單的三種模式工廠模式單例模式和注冊樹模式進行簡單的講解。文件創(chuàng)建完后,咱們回到單元測試文件文件再執(zhí)行一下單元測試命令發(fā)現(xiàn),也能返回成功,這樣的話我們就能很方便的修改任何驅(qū)動了。 php 設(shè)計模式之工廠模式、單例模式、注冊樹模式 在軟件工程中,創(chuàng)建型設(shè)計模式承擔(dān)著對象創(chuàng)建的職責(zé),嘗試創(chuàng)建適合程序上下文的對象,對象創(chuàng)建設(shè)計模式的產(chǎn)生是由于軟件工程設(shè)計的問題,具...

    liangzai_cool 評論0 收藏0
  • PHP設(shè)計模式(一)簡單工廠模式 (Simple Factory For PHP

    摘要:工廠模式使一個類的實例化延遲到其子類。參考系列源地址系列目錄設(shè)計模式概述設(shè)計模式一簡單工廠模式設(shè)計模式二工廠方法模式設(shè)計模式三抽象工廠模式設(shè)計模式四單例模式 一、什么是簡單工廠模式 簡單工廠 (Simple Factory)又稱靜態(tài)工廠方法模式(Static Factory Method Pattern)   使用的頻率可以說是非常之高,它的官方解釋為:定義一個用于創(chuàng)建對象的接口,讓子...

    Hancock_Xu 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<