策略模式与状态模式的异同

自从知道了策略模式和状态模式这两个行为类的设计模式后,就一直以为这两个模式有点难以区分。不只 UML 类图看起来没什么区别,就连具体实现也是很是类似。通过一段时间研究,稍微有了一点理解。算法 策略模式和状态模式都是消除含有大量 if...else 或 switch...case 这类硬编码结构的良策,虽然不是全部硬编码结构均可以用这两种模式来消除。根据个人理解,能够从其应用场景方面来区分两个模式。
相关文章
相关标签/搜索