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

定义:

  在一个操作方法中定义算法的流程,其中这些步骤由子类完成。模板方法模式让子类

在不变更原有算法流程的情况下,能够重新定义其中的步骤。

  上述的定义中包含两个方面:

    定义一个算法的流程,即是很明确地定义算法的每一步骤,并写在父类的方法中

,而每一个步骤都可以是一个方法的调用。

    某些步骤由子类完成,需要在子类中重写。

 

  

 


 

  

  运用模板方法可以将可能出现重复的“算法流程”,从子类提升到父类中,减少重复

的发生,并且也开放子类参与算法各个步骤的执行或优化。这一点在Shader中也有体现

 


  

模板方法应用

  RPG游戏中,不同角色的技能释放可以用模板方法把释放过程的流程固定,然后在子类中修改每一个

流程中的方法

  在线游戏角色登录的流程,对于不同账号的登录,可能不同,用模板方法将登录流程固定下来,例如,

显示登录界面=>选择登录方法=>输入账号密码=>向服务器请求登录等

 

posted @ 2018-01-09 17:37  Recho  阅读(294)  评论(0编辑  收藏  举报