The second group of patterns, structural patterns, handles the way objects are composed into new objects. The following patterns belong to this group:
- Adapter pattern: This pattern, which is also known as a wrapper or a translator pattern, converts the interface of a class into another interface expected by a client. It is described in Chapter 5, Adapter, Decorator, Facade, and Proxy.
- Bridge pattern: This decouples an abstraction from its implementation, which allows the two to vary independently. This pattern is described in Chapter 4, Composite, Flyweight, Marker Interface, and Bridge.
- Composite pattern: This composes from the hierarchies of more basic objects. This pattern is described in Chapter 12, Composite, Flyweight, ...