Structural
结构型模式
- 组合类和对象以形成更大的结构
- 简化结构中的关系,使系统更易于理解和扩展。
- 减少系统中不同部分之间的依赖关系,提高系统的灵活性和可维护性。
结构型模式主要包括以下几种:
- 适配器模式(Adapter):允许将一个类的接口转换成客户端期望的另一个接口,使原本接口不兼容的类可以一起工作。
- 桥接模式(Bridge):将抽象部分与实现部分分离,使它们可以独立变化,通过组合的方式建立两者之间的联系,而不是继承。
- 组合模式(Composite):允许将对象组合成树形结构以表示“部分-整体”的层次结构。使得用户对单个对象和组合对象的使用具有一致性。
- 装饰器模式(Decorator):动态地给一个对象添加一些额外的职责,就增加功能来说,装饰器模式相比生成子类更为灵活。
- 外观模式(Facade):提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。
- 享元模式(Flyweight):运用共享技术有效地支持大量细粒度的对象,以减少创建对象的数量,降低程序内存的占用,提高效率。
- 代理模式(Proxy):为其他对象提供一种代理以控制对这个对象的访问,可以在客户端和目标对象之间起到中介的作用,并可以添加一些功能。
这些模式在不同的应用场景中有着广泛的应用,比如在系统需要使用现有的类但其接口不符合系统的需要时,可以使用适配器模式来进行接口适配;当系统需要对一系列的对象进行操作而不想关心这些对象是简单的还是复杂的组合时,可以使用组合模式来统一对待。
通过运用结构型模式,开发者可以更容易地设计出结构清晰、关系简单、高效灵活的系统架构。