真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

“HeadFirst設(shè)計模式“:工廠模式-創(chuàng)新互聯(lián)

工廠模式

創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比噶爾網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式噶爾網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋噶爾地區(qū)。費用合理售后完善,10余年實體公司更值得信賴。

工廠模式是創(chuàng)建型模式模式,解決new對象時的一些列問題,如:依賴,耦合,后期維護等

1. 簡單工廠模式

如:有一個披薩店類,制作披薩流程如下的,,,代碼里直接new出了披薩,然后做些操作,如下:

“Head First 設(shè)計模式“ :工廠模式“Head First 設(shè)計模式“ :工廠模式

我們把new這段代碼封裝起來,移動到單獨的一個類里(SimplePizzaFactory),我們新增的類就是工廠,如下;

“Head First 設(shè)計模式“ :工廠模式“Head First 設(shè)計模式“ :工廠模式

最終的代碼如下;

“Head First 設(shè)計模式“ :工廠模式“Head First 設(shè)計模式“ :工廠模式

總結(jié):

新增的SimplePizzaFactory就是簡單工廠模式(一般沒有子類,沒有再繼承關(guān)系),我們看看定義,如下:

“Head First 設(shè)計模式“ :工廠模式“Head First 設(shè)計模式“ :工廠模式

2. 工廠方法模式

定義:定義一個用于創(chuàng)建對象的接口,讓子類決定實例化哪一個類,工廠方法使一個類的實例化延遲到其子類。

問題:披薩店的列子中,如果有兩個分店,一個在美國,一個在英語,,那他們需要生產(chǎn)本地化的披薩,這時要引入工廠方法模式了,類圖如下:

“Head First 設(shè)計模式“ :工廠模式“Head First 設(shè)計模式“ :工廠模式

說明:pizzaStore超類(工廠類),有兩個子類,分別兩個子類來決定到底實例化那些產(chǎn)品。

3. 抽象工廠模式

定義:抽象工廠模式提供一個接口,用于創(chuàng)建相關(guān)或依賴對象的家族,而不需要明確指定具體類??梢岳斫獬墒嵌鄠€工廠方法的組合。

解決問題:在工廠方法模式中,我們的具體創(chuàng)建者每次使用都只能創(chuàng)建一個同類型的對象,假如我們現(xiàn)在需要的是多個不同類型的對象,工廠方法就滿足不了需求了。這時我們可以把多個工廠方法組合到一個類,這就是抽象工廠模式,它就是專門用來創(chuàng)建多個產(chǎn)品,也可以說是創(chuàng)建產(chǎn)品家族的。類圖如下:

“Head First 設(shè)計模式“ :工廠模式“Head First 設(shè)計模式“ :工廠模式

需求:為了保證質(zhì)量,我們需要把原料統(tǒng)一共同時,就適合抽象工廠來解決。類圖如下:

“Head First 設(shè)計模式“ :工廠模式“Head First 設(shè)計模式“ :工廠模式

抽象工廠模式的優(yōu)點

(1)、允許客戶使用抽象的接口創(chuàng)建一組相關(guān)產(chǎn)品,而不需要知道(或者關(guān)心)產(chǎn)出的具體產(chǎn)品是什么,這樣客戶就可以從具體的產(chǎn)品中解耦出來。

(2)、一個具體工廠可以創(chuàng)建多個產(chǎn)品,與工廠方法模式相比,可以少產(chǎn)生具體工廠的類數(shù)量。

(3)、易于交換產(chǎn)品系列,只要更換具體工廠,就可以改變這個產(chǎn)品系列。

抽象工廠模式的和缺點

(1)、抽象工廠是使用組合的方式把工廠方法集合到一個類中,當新增一個產(chǎn)品家族成員時就要修改抽象工廠類及其下面的具體工廠類,所以它的擴展性比較差。

(2)、每新增一個產(chǎn)品子類都要創(chuàng)建一個類,當產(chǎn)品子類過多時會產(chǎn)生很多類,導(dǎo)致系統(tǒng)復(fù)雜性加大。

抽象工廠模式的使用場合

1、當需要創(chuàng)建產(chǎn)品家族,或者需要想讓創(chuàng)建的產(chǎn)品集合起來時使用。

2、當系列產(chǎn)品不固定,在以后可能會增加整個系列產(chǎn)品時使用。

設(shè)計原則

    1. 對擴展開放,對修改關(guān)閉。

    2. 依賴抽象,不要依賴具體類。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


文章標題:“HeadFirst設(shè)計模式“:工廠模式-創(chuàng)新互聯(lián)
分享路徑:http://weahome.cn/article/pcscd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部