Provide a unified interface to a set of interfaces in a subsystem. Façade defines a higher-level interface that makes the subsystem easier to use.
-Design Patterns, GoF
1. How complex must a subsystem be to justify a Façade? In other words, how do you decide when to use a Façade?
2. How can a Façade speed build time for a given subsystem?
3. In a distributed environment, what benefits does a (Session) Façade offer beyond shielding complexity or decoupling subsystems?
4. What are the costs of using a Façade? Do Facades ever make things more complex?
Examples – Which are Facades?
1. Java Swing Font and Graphics classes
2. J2EE Session Façade
· Façade Pattern (Data & Object Factory)
· Façade Pattern (Wikipedia)