模版方法模式(
template method)、命令模式(
command pattern)、迭代器模式(
iterator pattern)、觀察者模式(
oberver pattern)、中介者模式(
mediator pattern)、備忘錄模式(memento pattern)、直譯器模式
(interpreter pattern)、狀態模式
(state pattern)、策略模式
(strategy pattern)、職責鏈模式
(chain of responsibility)、訪問者模式
(visitor pattern)。
下面我們介紹一下模版方法模式(template method)的定義和在什麼情況下使用。
模板方法模式把我們不知道具體實現的步驟封裝成抽象方法,提供乙個按正確順序呼叫它們的具體方法(這些具體方法統稱為「模板方法」),這樣構成乙個抽象基類。子類通過繼承這個抽象基類去實現各個步驟的抽象方法,而工作流程卻由父類控制。模版方法中的方法可以分為兩大類:模版方法(template method)和基本方法(primitive method)。
現在分析乙個簡單的例項:
namespace templatemethod.designpattern
virtual public void doalgostep3()
virtual public void doalgostep5()
}
class customalgorithm : algorithm
public override void doalgostep5()
}
public class client
}}
閱讀全文
C 設計模式之我見 四
今天咱們接著上一節的行為型模式觀察者模式 oberver pattern 中介者模式 mediator pattern 備忘錄模式 memento pattern 給大家繼續講。在前這幾節中,因為時間緊促,可能有些詮釋的不到位,可能多少有點瑕疵,因為不同人的理解是不同的概念。當然希望廣大讀者多提建議...
C 設計模式之我見 三
composite pattern 外觀模式 fa ade pattern 享元模式 flyweight pattern 模式 proxy pattern 組合模式 composite pattern 將物件以樹形結構組織起來,以達成 部分 整體 的層次結構,使得客戶端對單個物件和組合物件的使用具有...
C 設計模式之我見 三
介面卡模式 adapter pattern 橋接模式 bridge pattern 裝飾模式 decorator pattern 組合模式 composite pattern 外觀模式 fa ade pattern 享元模式 flyweight pattern 模式 proxy pattern 下面...