總結學習過的設計模式的區別

2021-10-01 19:25:42 字數 717 閱讀 4337

我們知道設計模式主要是分為三種,下面主要是就自己知道的六種模式分別細說下

建立型模式:工廠模式 (這裡就不細分簡單工廠,工廠方法,抽象工廠),單例模式,

行為型模式:觀察者模式

結構型模式:介面卡模式 裝飾模式 **模式

下面就是比較同型別的設計模式的區別

工廠模式,單例模式的比較

個人感覺就是單例模式比較適合於工具類,也就是說這個類或者是乙個物件而言是獨一無二的,但是工廠模式而言生產而言是建立出統一型別的產品,選擇性比較大

第二點就是執行緒安全這一方面:單例模式涉及到執行緒安全這一方面的考慮了

**模式與裝飾模式的比較

**模式主要是分為靜態**與動態**,其中靜態**與裝飾模式有點相似,個人理解可以說裝飾模式是在靜態**上多裝飾乙個角色,多了乙個具體的裝飾角色,**設計也是感覺差不多

,但是動態**採用了jdk動態**以及cglib動態**,這兩種採用的底層技術又有點不一樣

其二兩者的側重點又有點不同:**模式主要是解決通過**來實現對物件的訪問這麼乙個目的,但是裝飾模式更多的還是對於功能的新增與刪減

介面卡模式與**模式,以及裝飾模式的區別

介面卡模式主要解決的就是現有的介面不適合客戶端需求的介面要求,才會通過介面卡來對介面進行適配

其二:就是兩者的**設計這一塊也是有很大的區別: 在介面卡模式中,介面卡角色類中設計時的類主要就是注入現有的類,然後就是實現客戶端給定的乙個介面,然後實現符合需求的方法即可

設計模式的學習總結

最近好好學習了下設計模式,決定把自己的一些學習內容和心得整理一下。先針對模式本身寬泛的講一講,模式的定義 模式是在某情境下,針對某問題的某種解決方案。現在針對這個定義來談談吧。情境就是應用某個模式的情況。這種情況應該會是經常出現的,因為模式並不是什麼有嚴格規定死的東西,它是人們開發經驗的總結,針對一...

設計模式學習總結

之前一直是面向過程程式設計,前段時間因為某些原因需要更好的去理解一下物件導向思想精髓,在別人的推薦下看了 大話設計模式 這本書。通過對29個模式的學習,不僅僅了解了設計模式是個什麼回事,也稍微加深了一點對物件導向 object oriented 技術。物件導向技術關注的是物件,物件的優點在於,可以定...

設計模式 學習總結

設計模式是解決問題的方案,學習現有的設計模式可以做到經驗復用。擁有設計模式詞彙,在溝通時就能用更少的詞彙來討論,並且不需要了解底層細節。確保乙個類只有乙個例項,並提供該例項的全域性訪問點。實現 使用乙個私有建構函式 乙個私有靜態變數以及乙個公有靜態函式。1 懶漢式 執行緒不安全 public cla...