設(shè)計(jì)模式源起現(xiàn)實(shí)生活冯吓,譬如建筑設(shè)計(jì)師想要建造一棟建筑,他們會參照以往的圖紙或者建造方法來繪制新建筑的圖紙宾娜。將建筑師們所參照的這些圖紙以及設(shè)計(jì)歸納總結(jié)乃至升華出來的一種針對某一類問題解決方案的設(shè)計(jì)思想與理念就是我們熟知的設(shè)計(jì)模式侈百。
軟件開發(fā)中的設(shè)計(jì)模式則是一套針對某一問題的一套設(shè)計(jì)良好的解決方案缀旁,是前輩們的心血與結(jié)晶更扁。其優(yōu)點(diǎn)有三:
-
可以大大縮短開發(fā)時間
- 經(jīng)過良好的設(shè)計(jì)以及實(shí)踐檢驗(yàn)
- 是一套標(biāo)準(zhǔn)的解決方法
- 針對類似的問題行之有效
-
減少開發(fā)成本
- 提高代碼可復(fù)用性
- 提高健壯性
- 提高可維護(hù)性
-
提高可交流性
- 經(jīng)過良好定義盖腕,易于理解和調(diào)試
- 團(tuán)隊(duì)新成員更容易理解代碼結(jié)構(gòu)及上手
根據(jù)設(shè)計(jì)意圖分為Creational(建造型)、Structral(結(jié)構(gòu)型)浓镜、Behavioral(行為型)三種溃列。使用設(shè)計(jì)模式的精髓在于學(xué)習(xí)與借鑒而不是一味的照搬,只有真正理解其設(shè)計(jì)意圖膛薛,進(jìn)而融匯貫通听隐,方為真正領(lǐng)悟。