一氯析、創(chuàng)建型模式
單例 工廠 抽象工廠 建造者(Builder) 原型
二寿烟、結(jié)構(gòu)型模式
適配器 裝飾 橋接 組合 享元 代理 外觀
三、行為型模式
觀察者 訪問者 中介者 解釋器 迭代器 狀態(tài) 命令 策略 備忘錄 職責鏈 模板方法
我們通常根據(jù)兩條準則對模式進行分類,
第一條準準則是目的:
創(chuàng)建型模式與對象的創(chuàng)建有關(guān)碗短;結(jié)構(gòu)型模式處理類或?qū)ο蟮慕M合凤优,它采用繼承機制來組合接口或?qū)崿F(xiàn)(類結(jié)構(gòu)型模式)悦陋,或者通過組合一些對象,從而實現(xiàn)新的功能(對象結(jié)構(gòu)型模式)筑辨;行為型模式對類或?qū)ο笤鯓咏换ズ驮鯓臃峙渎氊熯M行描述俺驶。
第二是范圍準則,指定模式主要是用于類還是用于對象棍辕。類模式處理類和子類之間的關(guān)系暮现,這些關(guān)系通過繼承建立,是靜態(tài)的楚昭,在編譯時刻便確定下來了栖袋。對象模式處理對象間的關(guān)系,這些關(guān)系在運行時刻是可以變化的抚太,更具動態(tài)性塘幅。從某種意義上來說,幾乎所有模式都使用繼承機制尿贫,所以“類模式”只指那些集中于處理類間關(guān)系的模式电媳,而大部分模式都屬于對象模式的范疇。
創(chuàng)建型類模式將對象的部分創(chuàng)建工作延遲到子類庆亡,而創(chuàng)建型對象模式則將它延遲到另一個對象中匾乓。結(jié)構(gòu)型類模式使用繼承機制來組合類,而結(jié)構(gòu)型對象模式則描述了對象的組裝方式又谋。行為型類模式使用繼承描述算法和控制流拼缝,而行為型對象模式則描述一組對象怎樣協(xié)作完成單個對象所無法完成的任務(wù)括享。
創(chuàng)建型模式為其他兩種模式使用提供了環(huán)境,好比VS軟件提供了.net環(huán)境和操作平臺珍促,是各種編程語言能隨心所欲地在這個平臺上編譯執(zhí)行铃辖;
結(jié)構(gòu)型模式側(cè)重于接口的使用(自我感覺),它做的一切工作都是對象或是類之間的交互猪叙,提供一個門娇斩,成就一個你來我往,協(xié)同合作的地球村穴翩;
行為型模式顧名思義犬第,側(cè)重于具體行為,所以概念中才會出現(xiàn)職責分配和算法通信等內(nèi)容芒帕。
將三者結(jié)合起來成為故事歉嗓,中美合作的故事——創(chuàng)建型模式提供國際環(huán)境,無戰(zhàn)爭背蟆,求發(fā)展鉴分;結(jié)構(gòu)型模式為中美合作提供理由,即和平時代的互利共贏带膀,行為型模式就具體到兩個大國之間是如何合作志珍,比如經(jīng)濟合作、文化合作等~