1. 程式人生 > >GoF之模板方法模式(Template Method)

GoF之模板方法模式(Template Method)

釋放 wid 情況 gpo 在線遊戲 一點 需要 eth inf

定義:

  在一個操作方法中定義算法的流程,其中這些步驟由子類完成。模板方法模式讓子類

在不變更原有算法流程的情況下,能夠重新定義其中的步驟。

  上述的定義中包含兩個方面:

    定義一個算法的流程,即是很明確地定義算法的每一步驟,並寫在父類的方法中

,而每一個步驟都可以是一個方法的調用。

    某些步驟由子類完成,需要在子類中重寫。

  技術分享圖片


  

  運用模板方法可以將可能出現重復的“算法流程”,從子類提升到父類中,減少重復

的發生,並且也開放子類參與算法各個步驟的執行或優化。這一點在Shader中也有體現

技術分享圖片


  

模板方法應用

  RPG遊戲中,不同角色的技能釋放可以用模板方法把釋放過程的流程固定,然後在子類中修改每一個

流程中的方法

  在線遊戲角色登錄的流程,對於不同賬號的登錄,可能不同,用模板方法將登錄流程固定下來,例如,

顯示登錄界面=>選擇登錄方法=>輸入賬號密碼=>向服務器請求登錄等

GoF之模板方法模式(Template Method)