【设计模式】【行为型】【状态模式】State Design Pattern

状态模式(State Design Pattern)

状态模式一般用来实现状态机,而状态机常用在游戏、工作流引擎等系统开发中。不过,状态机的实现方式有多种,除了状态模式,比较常用的还有分支逻辑法和查表法。

什么是有限状态机?

  • 有限状态机,英文翻译是 Finite State Machine,缩写为 FSM,简称为状态机。
  • 状态机有 3 个组成部分:状态(State)、事件(Event)、动作(Action)。
  • 状态机实现方式一:分支逻辑法
  • 状态机实现方式二:查表法
  • 状态机实现方式三:状态模式
  • 像游戏这种比较复杂的状态机,包含的状态比较多,我优先推荐使用查表法,而状态模式会引入非常多的状态类,会导致代码比较难维护。相反,像电商下单、外卖下单这种类型的状态机,它们的状态并不多,状态转移也比较简单,但事件触发执行的动作包含的业务逻辑可能会比较复杂,所以,更加推荐使用状态模式来实现。
posted @ 2021-01-20 15:31  kudo_shini  阅读(77)  评论(0编辑  收藏  举报