Archive for 28 9 月, 2010
《楼市三字经》痛批楼市新政失败
星期二, 28 9 月, 2010设计模式学习——Strategy(策略)
星期二, 28 9 月, 2010意图:可以根据所处上下文,使用不同的业务规则或算法。
问题:对所需算法的选择取决于发出请求的客户或者要处理的数据。如果只有一些不会变化的算法,就不需要Strategy模式。
解决方案:将对算法的选择和算法的实现相分离。允许根据上下文进行选择。
参与者与协作者:
1. Strategy指定了如何使用不同的算法。
2. 各ConcreteStrategy实现了这些不同的算法。
3. Context通过类型为Strategy的引用使用具体的ConcreteStrategy。Strategy与Context相互作用以实现所选的算法(有时候Strategy必须查询Context)。Context将来自Client的请求转发给Strategy。
Feed: