設(shè)計(jì)模式
簡(jiǎn)單工廠(chǎng)模式
有一組同類(lèi)對(duì)象,由統(tǒng)一的函數(shù)根據(jù)不同的參數(shù)返回對(duì)應(yīng)的對(duì)象.組成有工廠(chǎng)類(lèi),抽象產(chǎn)品類(lèi),具體產(chǎn)品類(lèi)
優(yōu)點(diǎn):
1.對(duì)象創(chuàng)建和使用的分離
缺點(diǎn):
1.新對(duì)象增多時(shí),增加工廠(chǎng)類(lèi)的邏輯復(fù)雜度,不利于以后的維護(hù)
2.當(dāng)要添加新對(duì)象時(shí),要修改工廠(chǎng)類(lèi)代碼
適用場(chǎng)景:
1.工廠(chǎng)類(lèi)負(fù)責(zé)創(chuàng)建的對(duì)象不是很多時(shí)
2.調(diào)用方不關(guān)心創(chuàng)建對(duì)象過(guò)程
工廠(chǎng)方法模式
是對(duì)簡(jiǎn)單工廠(chǎng)模式的優(yōu)化,當(dāng)有新對(duì)象產(chǎn)品要添加時(shí),不需要修改工廠(chǎng)類(lèi),只要添加新的子工廠(chǎng)類(lèi)和產(chǎn)品類(lèi)
優(yōu)點(diǎn):
1.添加新產(chǎn)品時(shí),不需修改調(diào)用方代碼
缺點(diǎn):
1.添加新產(chǎn)品時(shí)需要添加具體工廠(chǎng)類(lèi)和產(chǎn)品類(lèi)
抽象工廠(chǎng)模式:
將工廠(chǎng)模式中一個(gè)工廠(chǎng)生產(chǎn)一個(gè)具體產(chǎn)品,升級(jí)為一個(gè)工廠(chǎng)生產(chǎn)一系列產(chǎn)品
優(yōu)點(diǎn):
1.隔離了具體產(chǎn)品的生成
2.保證調(diào)用方使用一個(gè)產(chǎn)品簇中的對(duì)象
3.添加新的產(chǎn)品簇更加方便
缺點(diǎn):
1.添加新的產(chǎn)品等級(jí)結(jié)構(gòu)麻煩,需要對(duì)系統(tǒng)進(jìn)行較大的修改,甚至修改抽象層代碼