Comparing the Façade and Proxy patterns

Both the façade and proxy patterns are structural design patterns. They are similar in the sense that they both have a proxy/façade object in front of the real objects. Differences are really in the intent or purpose of the patterns, as shown in the following table:

Proxy pattern

Façade pattern

It provides you with a surrogate or placeholder for another object to control access to it

It provides you with an interface to large subsystems of classes

A Proxy object has the same interface as that of the target object and holds references to target objects

It minimizes the communication and dependencies between subsystems

It acts as an intermediary between the client and object that is wrapped

A Façade ...

Get Learning Python Design Patterns - Second Edition 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.