設計模式 建立型

2021-10-24 23:05:26 字數 1003 閱讀 7610

原型模式

工廠模式分為三種更加細分的型別:靜態工廠、工廠方法、抽象工廠

靜態工廠、工廠方法的原理比較簡單,在實際的專案中也比較常用。而抽象工廠的原理稍微複雜點,在實際的專案中相對也不常用(了解即可)

工廠模式的好處:

1、將建立物件的事交給工廠,客戶端不用自己建立物件,明確了各個類的職責

2、如果有新的物件增加,只需要增加乙個具體的類和具體的工廠類即可,簡化了物件的建立。

3、解耦,不用工廠的話,客戶端和new物件的**耦合在一起,工廠建立物件就可以將二者分開解耦。後期維護容易,增強系統的擴充套件性

實際使用:spring的beanfactory3y

建造者模式和工廠模式一樣,也是用來建立物件的。

使用原則:

1、如果乙個類中有很多屬性,為了避免建構函式的引數列表過長,影響**的可讀性和易用性,可以考慮使用建造者模式了。

2、如果我們希望建立不可變物件,也就是說,物件在建立好之後,就不能再修改內部的屬性值,要實現這個功能,我們就不能在類中暴露 set() 方法。適合使用建造者模式

具體實現類似下面:

如果物件的建立成本比較大,而同乙個類的不同物件之間差別不大(大部分欄位都相同),在這種情況下,我們可以利用對已有物件(原型)進行複製的方式來建立新物件,以達到節省建立時間的目的。

這種基於原型來建立物件的方式就叫作原型設計模式,簡稱原型模式

什麼時候建立物件的開銷很大?

如果物件中的資料需要經過複雜的計算才能得到(比如排序、計算雜湊值),或者需要從 rpc、網路、資料庫、檔案系統等非常慢速的 io 中讀取

建立型設計模式

建立型設計模式對類的建立例項化過程進行抽象,將物件的建立和物件的使用分離。簡單工廠模式 使用頻率4星 工廠方法模式 使用頻率5星 抽象工廠模式 使用頻率5星 建造者模式 使用頻率2星 原型模式 使用頻率3星 單例模式 使用頻率4星 toc 簡單工廠模式將物件建立和物件使用相分離,降低了系統耦合度。優...

建立型設計模式

設計模式分為總的來說分為三大類 建立型模式 五種,工廠方法模式 抽象工廠模式 單例模式 建造者模式 原型模式 結構型模式 七種,介面卡模式 裝飾器模式 模式 外觀模式 橋接模式 組合模式 享元模式 行為模式 十一種,策略模式 模板方法模式 觀察者模式 迭代子模式 責任鏈模式 命令模式 備忘錄模式 狀...

建立型 設計模式

單例 單例項,自我例項化,提供全域性訪問點 工廠 不同型別例項由不同工廠建立,當然也有通過乙個靜態方法建立一種例項或通過傳入引數決定生產的例項 這兩種很明顯不方便擴充套件,需修改 抽象工廠 考慮物件有不同維度 如車有型別和顏色 那麼工廠負責產生一類產品 如工廠產生紅車,白車,黑車 那麼型別上可以通過...