The Façade design pattern
The Façade pattern is a structural pattern that simplifies the access to a complex system. It is very similar to the Adapter pattern, but it creates a wall (a façade) between one or more subsystems. The big difference between the adapter and the façade is that instead of adapting an interface to another, the façade simplifies the use of a subsystem, typically by using multiple classes of that subsystem.
We can apply the same idea to shielding one or more programs, but in this case, we call the façade a gateway—more on that in Chapter 19, Introduction to Microservices Architecture.
The Façade pattern is extremely useful and can be adapted to multiple situations.
Goal
The Façade pattern aims to simplify the use of one or more subsystems by providing an interface that is easier to use than the subsystems themselves, shielding the consumers from that complexity.
Design
Imagine...