SE450
:
Facade Pattern
[76/86]
Context
A subsystem consists of multiple classes, making it complicated for clients to use
Implementor may want to change subsystem classes
Want to give a coherent entry point
Solution
Define a facade class that exposes all capabilities of the subsystem as methods
The facade methods delegate requests to the subsystem classes
The subsystem classes do not know about the facade class