状态模式:允许对象在内部状态改变时改变他的行为,对象看起来好像修改了他的类. 用到的设计原则1.封装变化2.多用组合,少用继承3.针对接口编程,不针对实现编程4.松耦合5.对扩展开放,对修改关闭6.依赖抽象,而不依赖具体7.只和朋友交谈8.别找我,我会找你9.类应该只有一个修改的理由 例子来自<Head First设计模式>,糖果机的例子 interface State { public void insertQuarter(); public void ejectQuarter(); pub…
一,总体概要 1,笔者浅谈 状态模式,又称状态对象模式(Pattern of Objects for States),状态模式是对象的行为模式. 状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况.把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化. 看一个例子: var TrafficLight = function () { var count = 0; var currentState = new Red(this); this.change = fu…