结构型模式8-结构型模式总结
2018-04-16 本文已影响0人
sunblog
结构型模式8-结构型模式总结
结构型模式总共有7种:
- 适配器模式(Adapter)
- 组合模式(Composite)
- 桥接模式(Bridge)
- 代理模式(Proxy)
- 外观模式(Facade)
- 享元模式(flyweight)
比较
Adapter和Bridge比较:两者都涉及到了转发请求给对象。bridge模式的目的是分离抽象和实现,没有改变原来的接口。而adapter的目的是使不兼容的接口兼容,改变了原来的接口(adaptee)。在软件开发的周期,当发现两个不同的必须要同时工作的时候,需要使用Adapter模式,此处耦合不可预见。而Bridge模式在设计类之前实施。
Composite和Decorator: Composite的目的是为让用户忽略个体和组合之间的差异。Decorator的目的是不需要生成子类就可以为一个对象添加职责。
Decorator和Proxy: 两者都为用户提供了一致的接口(都继承了Subject)。Proxy的目的是当直接访问一个个体不方便(参考Java proxy)或不符合需要时,为这个实体提供一个替代者。
Flyweight:运用共享技术有效地支持大量细粒度的对象。