模式分类:
创建型模式:创建对象或者变量使用的设计模式,可以减少需求更改时对已创建对象带来的冲击。
结构型模式:通过继承和组合得到更灵活的结构,减少更改对结构带来的冲击。
行为型模式:通过继承和组合来划分类和对象的职责,减少更改对多个交互对象带来的冲击。
类模式处理类与子类关系 对象模式处理对象间动态关系
关键技法:
静态->动态
早绑定->晚绑定
继承->组合
编译时依赖->运行时依赖
紧耦合->松耦合
1.Template Method模式
使用虚方法,纯虚方法提高类扩展性
2.Strategy策略模式
定义一系列算法。把他们一个个封装起来,并且使它们可互相替换。该模式使得算法可独立于使用它的客户程序而变化
就是不同算法间可以互相替换但不会对稳定的产生影响。
通常运用在有许多条件判断语句的程序中(并且这个条件判断语句还可能不断增加)。
3.Observer观察者模式
定义对象间一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依赖它的对象都得到通知并自动更新。
使用Observer模式可以达到松耦合的效果。
目标发送通知时,无需指定观察者,通知自动传播。
4.Decorator装饰模式
动态地给一个对象增加一些额外的职责。就增加功能而言,Decorator模式比生成子类更为灵活。
这种模式避免了类的膨胀,使用组合的手法提高了类之间的灵活性。
5.Bridge桥模式
将抽象部分与实现部分分离,使它们可以独立变化
对象间组合的关系解耦了抽象和实现之间固有的绑定关系。
解决了多继承方案对单一职责原则,复用性差的缺点。
网友评论