The Facade Pattern

Learn about the Facade patterns in Python with the help of an example.

We'll cover the following

Overview

The Facade pattern is designed to provide a simple interface to a complex system of components. It allows us to define a new class that encapsulates a typical usage of the system, thereby avoiding a design that exposes the many implementation details hiding among multiple object interactions. Any time we want access to common or typical functionality, we can use a single object’s simplified interface. If another part of the project needs access to more complete functionality, it is still able to interact with the components and individual methods directly.

The UML diagram for the Facade pattern is really dependent on the subsystem, shown as a package, Big System, but in a cloudy way it looks like this:

Get hands-on with 1200+ tech skills courses.