Structural design patterns
In the previous section, we discussed creational design patterns and how they provide the best solutions for object creation according to business demands. Creational design patterns only provide a solution for creating objects in the application with how these objects merge with each other in the application for a specific business goal, the structural design pattern comes into the picture. In this chapter, we will be exploring structural patterns, and how these patterns are useful to define the relationship between the objects either using inheritance or composition for larger structures of an application. Structural patterns allow you to solve many problems related to structuring the relationship between the objects. They show you how to glue different parts of a system together in a flexible and extensible fashion. Structural patterns help you guarantee that when one of the parts changes, the entire structure does not need to change; in a car you could replace the tyres with different vendors without impacting the other parts of that car. They also show you how to recast parts of the system that do not fit (but that you need to use) into parts that do fit.