标签:
面向对象设计其实就是希望做到代码的责任分解。
一个类的设计尽量要做到 “单一职责原则”;一旦需求发生变化,改动的地方就越小。
如果一个类的方法里面有很多个逻辑处理(比如:else if分支过多),
如果一旦需求发生变化,(比如:某个else if分支的需求发生变化),需要改动整个方法,维护出错的风险很大。
这样做,也违背了“开放-封闭原则”。
状态模式,当一个对象的内在状态发生变化时允许改变其行为,这个对象看起来像是改变了其类。
状态模式主要解决的是当控制一个对象状态转换的条件表达式过于发杂时的情况。
把状态的判断逻辑转移到表示不同状态的一系列类当中,可以把复杂的判断逻辑简化。
标签:
原文地址:http://www.cnblogs.com/yucongblog/p/4677377.html