策略模式

看了这个策略模式,学习到了3个设计原则:

@封装变化。即首先要区分出一个对象不变与 变化的地方,把变化的部分提取出来,另起封装

@面向接口编码,而不是面向实现编码。   

面向实现编码的话 代码复用性不好,即不要在每个具体子类中实现继承或者实现接口的方法里 去 写实现编码,这样的话假如这个实现编码有几个子类都一样,那每个子类都可能要写相同的实现

@多用组合,少用继承。 继承有着它的总多弊端,诸如上边说的代码复用性,以及 代码不够灵活,不能够在运行时动态灵活改变。而用组合的话就可以增加运行时的动态灵活性,比如可以通过属性的set方法,在运行时(不是说jvm开始java class类的运行时),而是在编码过后,通过set方法,在需要的业务中实时去控制代码的运行逻辑。

posted @ 2015-09-28 10:59  wzhanke  阅读(145)  评论(0编辑  收藏  举报