1. "组件协作"模式
1.1 Template method模式
1.2 策略模式
1.3 观察者模式
2. "单一职责"模式
2.1 Decorator 模式
2.2 bridge 桥模式
3. "对象创建"模式
3.1 Factory Method工厂模式
4. "接口隔离"模式
4.1 代理模式proxy
4.2 适配器模式 adapter
5. 总结
如果把所有模式中的类换成A, B, C…, 然后方法换成f1, f2…等, 找出他们的共同点, 也就是下面:
- 可能是继承关系
- 可能是组合关系
- 可能是聚合关系
其中, 1和2的内存模型是一样的, 也就是说, B类的东西在A类中.
我们说的继承转组合(聚合)其实指的是第三种, 因为比较灵活, 耦合度比较低.