This pattern was previously described in GoF95.


The Façade pattern deals with a subsystem of classes. A subsystem is a set of classes that work in conjunction with each other for the purpose of providing a set of related features (functionality). For example, an Account class, Address class and CreditCard class working together, as part of a subsystem, provide features of an online customer.

In real world applications, a subsystem could consist of a large number of classes. Clients of a subsystem may need to interact with a number of subsystem classes for their needs. This kind of direct interaction of clients with subsystem classes leads to a high degree of coupling between the client objects and the subsystem (Figure ...

Get Software Architecture Design Patterns in Java now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.