設(shè)計(jì)模式

設(shè)計(jì)模式在開(kāi)發(fā)中經(jīng)常用到旺聚,在對(duì)一個(gè)項(xiàng)目织阳,模塊設(shè)計(jì)的時(shí)候,加以運(yùn)用會(huì)讓開(kāi)發(fā)過(guò)程更順暢砰粹;
這里總結(jié)一下唧躲,總的類(lèi)別:

創(chuàng)建型模式造挽,共五種:工廠方法模式、抽象工廠模式弄痹、單例模式饭入、建造者模式、原型模式肛真。(這里多一種簡(jiǎn)單工廠就沒(méi)寫(xiě)了)
結(jié)構(gòu)型模式谐丢,共七種:適配器模式、裝飾器模式蚓让、代理模式乾忱、外觀模式、橋接模式历极、組合模式窄瘟、享元模式。
行為型模式趟卸,共十一種:策略模式蹄葱、模板方法模式、觀察者模式锄列、迭代子模式图云、責(zé)任鏈模式、命令模式邻邮、備忘錄模式琼稻、狀態(tài)模式、訪問(wèn)者模式饶囚、中介者模式帕翻、解釋器模式。

  1. 簡(jiǎn)單工程模式
  最簡(jiǎn)單的工程模式
  1. 策略模式
 具體的實(shí)現(xiàn)過(guò)程放在策略類(lèi)里萝风,客戶(hù)端通過(guò)工廠模式取一個(gè)策略進(jìn)行執(zhí)行嘀掸;
  1. 裝飾模式
裝飾類(lèi)也是實(shí)現(xiàn)對(duì)象接口,并持有一個(gè)真實(shí)對(duì)象规惰;
客戶(hù)端調(diào)用的時(shí)候睬塌,在真實(shí)對(duì)象的函數(shù)實(shí)現(xiàn)外,再包裝一層歇万。
  1. 代理模式
和裝飾模式其實(shí)差不多揩晴,但是意義不同。這個(gè)是實(shí)現(xiàn)代理的贪磺;
  1. 工廠方法模式
不同的類(lèi)有不同的工廠
  1. 原型模式(其實(shí)就是clone一個(gè)對(duì)象)
  2. 模版方法模式(其實(shí)就是繼承一個(gè)對(duì)象)
  3. 外觀模式 (就是對(duì)一個(gè)系統(tǒng)類(lèi)的子接口提供一個(gè)統(tǒng)一的出口服務(wù)硫兰,客戶(hù)端不需要知道里面的具體類(lèi)別)
  4. 建造者模式
先生成一個(gè)builder,然后通過(guò)builder來(lái)創(chuàng)建一個(gè)對(duì)象寒锚。
然后builder 的build組裝過(guò)程一般放在一個(gè)單獨(dú)的Director類(lèi)里劫映。
客戶(hù)端使用的話违孝,使用Director類(lèi)型
  1. 觀察者模式
就是注冊(cè)監(jiān)聽(tīng)一個(gè)事件,得到通知的時(shí)候泳赋,通知所有觀察者
  1. 抽象工廠模式
屏幕快照 2017-07-09 下午4.14.56.png
兩套工程雌桑,每套工程都會(huì)生成對(duì)應(yīng)的組建;
  1. 狀態(tài)模式
一個(gè)Context維護(hù)一組狀態(tài)類(lèi)祖今,通過(guò)內(nèi)部狀態(tài)來(lái)選某一個(gè)狀態(tài)類(lèi)執(zhí)行函數(shù)
  1. 適配器模式 (兩組接口對(duì)不上的時(shí)候屿储,加一個(gè)中間adapter類(lèi)來(lái)轉(zhuǎn)換)
  2. 備忘錄模式(就是對(duì)某些信息進(jìn)行存儲(chǔ))
  3. 組合模式
樹(shù)形結(jié)構(gòu)击你; 非葉結(jié)點(diǎn)可以增加刪除下面的節(jié)點(diǎn)疹味,形成一個(gè)樹(shù)塞颁;
  1. 迭代器模式(就是一個(gè)for)
  2. 單例模式
雙層鎖
static
enum
  1. 橋接模式(就是把抽象與實(shí)現(xiàn)剝離,系統(tǒng)可能有多角度大渤,每一個(gè)分類(lèi)都可能變化,那就把他們分離出來(lái)讓她們單獨(dú)變化)
  2. 命令模式
客戶(hù)端 選擇一個(gè)命令掸绞,然后命令類(lèi)去接下來(lái)執(zhí)行泵三;
  1. 職責(zé)鏈模式
一個(gè)執(zhí)行,設(shè)置成一個(gè)鏈衔掸。降低了耦合度
  1. 中介者模式 (所有人的通信通過(guò)一個(gè)中間對(duì)象烫幕,像服務(wù)端server)
  2. 享元模式
有點(diǎn)像單例模式,工廠中存一個(gè)map敞映,如果需要點(diǎn)類(lèi)型存在了较曼,就不新創(chuàng)建了
  1. 解釋器模式
用于對(duì)一種文法活著表達(dá)對(duì)解析
  1. 訪問(wèn)者模式
屏幕快照 2017-07-09 下午4.47.21.png
訪問(wèn)者模式適用于數(shù)據(jù)結(jié)構(gòu)相對(duì)穩(wěn)定算法又易變化的系統(tǒng)。因?yàn)樵L問(wèn)者模式使得算法操作增加變得容易振愿。若系統(tǒng)數(shù)據(jù)結(jié)構(gòu)對(duì)象易于變化捷犹,經(jīng)常有新的數(shù)據(jù)對(duì)象增加進(jìn)來(lái),則不適合使用訪問(wèn)者模式冕末。
即Element不能經(jīng)常變換萍歉;
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市档桃,隨后出現(xiàn)的幾起案子枪孩,更是在濱河造成了極大的恐慌,老刑警劉巖藻肄,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蔑舞,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡嘹屯,警方通過(guò)查閱死者的電腦和手機(jī)攻询,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)州弟,“玉大人蜕窿,你說(shuō)我怎么就攤上這事谋逻。” “怎么了桐经?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵毁兆,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我阴挣,道長(zhǎng)气堕,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任畔咧,我火速辦了婚禮茎芭,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘誓沸。我一直安慰自己梅桩,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布拜隧。 她就那樣靜靜地躺著宿百,像睡著了一般。 火紅的嫁衣襯著肌膚如雪洪添。 梳的紋絲不亂的頭發(fā)上垦页,一...
    開(kāi)封第一講書(shū)人閱讀 51,125評(píng)論 1 297
  • 那天,我揣著相機(jī)與錄音干奢,去河邊找鬼痊焊。 笑死,一個(gè)胖子當(dāng)著我的面吹牛忿峻,可吹牛的內(nèi)容都是我干的薄啥。 我是一名探鬼主播,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼逛尚,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼罪佳!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起黑低,我...
    開(kāi)封第一講書(shū)人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤赘艳,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后克握,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體蕾管,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年菩暗,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了掰曾。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡停团,死狀恐怖旷坦,靈堂內(nèi)的尸體忽然破棺而出掏熬,到底是詐尸還是另有隱情,我是刑警寧澤秒梅,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布旗芬,位于F島的核電站,受9級(jí)特大地震影響捆蜀,放射性物質(zhì)發(fā)生泄漏疮丛。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一辆它、第九天 我趴在偏房一處隱蔽的房頂上張望誊薄。 院中可真熱鬧,春花似錦锰茉、人聲如沸呢蔫。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)片吊。三九已至,卻和暖如春扬霜,著一層夾襖步出監(jiān)牢的瞬間定鸟,已是汗流浹背而涉。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來(lái)泰國(guó)打工著瓶, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人啼县。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓材原,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親季眷。 傳聞我的和親對(duì)象是個(gè)殘疾皇子余蟹,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • 設(shè)計(jì)模式匯總 一、基礎(chǔ)知識(shí) 1. 設(shè)計(jì)模式概述 定義:設(shè)計(jì)模式(Design Pattern)是一套被反復(fù)使用子刮、多...
    MinoyJet閱讀 3,937評(píng)論 1 15
  • 設(shè)計(jì)模式基本原則 開(kāi)放-封閉原則(OCP)威酒,是說(shuō)軟件實(shí)體(類(lèi)、模塊挺峡、函數(shù)等等)應(yīng)該可以拓展葵孤,但是不可修改。開(kāi)-閉原...
    西山薄涼閱讀 3,792評(píng)論 3 14
  • 一橱赠、設(shè)計(jì)模式的分類(lèi) 總體來(lái)說(shuō)設(shè)計(jì)模式分為三大類(lèi): 創(chuàng)建型模式尤仍,共五種:工廠方法模式、抽象工廠模式狭姨、單例模式宰啦、建造者...
    RamboLI閱讀 749評(píng)論 0 1
  • 原文鏈接:http://blog.csdn.net/zhangerqing http://www.cnblogs....
    孤獨(dú)雜貨鋪閱讀 1,515評(píng)論 0 3
  • 心情似乎永遠(yuǎn)不像表達(dá)的那么歡愉赡模。 昨天上游戲替妮妮離婚田炭,系統(tǒng)消息提示,夫妻雙方已經(jīng)離婚纺裁,對(duì)方家具已全部搬出诫肠。抬頭看...
    酸奶不涼怎么喝閱讀 188評(píng)論 0 0