zoukankan      html  css  js  c++  java
  • State模式

    • 地铁十字转门
      • 状态迁移表格.
        • 起始状态 触发迁移的事件 终止状态  要执行的动作.

        • Locked   Coin               UnLocked UnLock
        • UnLocked Pass             Locked     Lock
      • 最直接的方式:switch(state)  case Locked : switch(event) case Pass:
    • State模式
      • State/Strategy模式
        • 都有一个Context,其委托给一个具有几个派生类的多态基类.
        • 不同:State模式中的派生类持有回指向Context的引用.派生类的主要功能时使用这个引用来调用Context中的方法.
        • 所有State模式实例都是Strategy模式实例.反之不成立.
      • State模式的收益
        • 分离了状态机的逻辑(分布在State派生类中)和动作(Context中实现).
        • 缺点:逻辑分散(无法在一处看到整个状态机逻辑);State派生类的难以编写.

    [Agile Software Development(Principles,Patterns,and Pracitices)]

  • 相关阅读:
    C语言I博客作业09
    C语言I博客作业08
    C语言I作业07
    C语言博客作业06
    C语言I博客作业05
    C语言I博客作业04
    C语言I博客作业03
    C语言|博客作业07
    C语言|博客作业06
    C语言|博客作业05
  • 原文地址:https://www.cnblogs.com/robyn/p/3474410.html
Copyright © 2011-2022 走看看