設計模式心得(待繼續補充)

2021-04-22 07:54:13 字數 1148 閱讀 3875

bridge模式

介面和實現**分離,指的是什麼模式?(

proxy?

bridge

?observer)

典型的例子:飛機有客機和貨機,製造商有空客、波音、麥道。

使用橋接模式設計,

inte***ce airplane

passengerplane implements airplan{}

cargoplane implements airplan{}

inte***ce airplanemaker

airbus implements airplanemaker{};

md implements airplanemaker{};

boeing implements airplanemaker{};

其中airplane

叫抽象化(

abstraction

)角色,

airplanemaker

叫實現化(

implementor

)角色;airplane

的子類叫修正抽象化

(refined abstraction)

角色,airplanemaker

的子類叫具體實現化(

concrete implementor

)角色

jdbc/odbc

不是橋接模式,而是介面卡模式。

strategy模式和template method模式:

兩者很相似,核心都是多型的體現。形式上,strategy包含了乙個template method模式,但是兩者考慮的角度不一樣:

strategy中的策略類一般是乙個動詞,強調行為,相當於把乙個方法抽象出來單獨作為乙個類,然後這個類採用template method進行重構,再組合到原類中;template method強調層次性,由上自下設計,類以名詞居多。

一般在進行系統架構設計時,往往要使用template method模式,而對某些行為方法進行擴充套件性考慮時,往往要用到strategy模式。通過上述分析,可以說這麼說:從形式上看,strategy 模式大於 template method模式;從應用層次上看,template method大於strategy模式。

設計模式 後續慢慢補充

設計模式 解決某一類問題最有效的方式 一 單例設計模式 解決的是乙個類只有乙個物件的問題 1.建構函式私有化 2.在類中建立自身型別的物件 3.把物件提供進去,通過定義乙個public的靜態函式返回該物件 餓漢式 private static final single s new single pr...

設計模式心得(二) 策略模式

這次說說的設計模式是策略模式,什麼是策略模式呢。它定義了演算法家族,分別封裝起來,讓它們之間可以互相替換,此模式讓演算法的變化,不會影響到使用演算法的客戶。下面用一幅uml圖來說明一下這個關係,這個圖屬於乙個比較典型的策略模式。這個圖我們怎麼來理解呢?整個對於strategy介面 演算法 的呼叫,都...

設計模式使用心得

紙上得來終覺淺,要知此事必躬行.四人幫寫的設計模式確實不錯,可是拜讀一遍以後,仍然不會熟練使用.看書的時候好像都明白了,但在實際開發過程中還是不會靈活運用.缺少實踐,光是理解書上demo例子還是不能完全掌握23種設計模式的精髓.剛接觸設計模式那時是很久以前了,那時候可能是自己很少寫過乙個完整的框架,...