【设计模式】一般性指导原则

使用某个设计模式先问自己3个问题:

1. 这个模式是干什么用的?

2. 不使用这个模式我会怎么做?

3. 用了这个模式我又会怎么做?可以带来哪些好处?

针对接口编程,而不是针对具体编程;

针对接口编程,利用多态,可以在运行时与任何(新)实现类进行绑定,以此达到“对修改关闭”的目的。

变化的地方使用接口进行引用,在运行时动态绑定到某个子类上;

多用组合,少用继承。

组合:持有基类引用,利用多态的特性在运行时动态绑定到具体子类上;

非公有的行为不要定义到基类中,而应该定义为接口,由需要的子类去实现;

由于接口不能提供代码复用,因此,可以预先定义几种不同类型的实现类,让子类从中选择继承;

如,策略模式中,将行为/算法定义为接口,并且提供各种具体的行为,在运行时动态绑定到接口上。

 

猜你喜欢

转载自just2learn.iteye.com/blog/2096982
今日推荐