Skip to content

Latest commit

 

History

History
43 lines (32 loc) · 1.34 KB

File metadata and controls

43 lines (32 loc) · 1.34 KB
layout pattern
title Proxy
folder proxy
permalink /patterns/proxy/
categories Structural
tags
Java
Gang Of Four
Difficulty-Intermediate

Also known as: Surrogate

Intent: Provide a surrogate or placeholder for another object to control access to it.

alt text

Applicability: Proxy is applicable whenever there is a need for a more versatile or sophisticated reference to an object than a simple pointer. Here are several common situations in which the Proxy pattern is applicable

  • a remote proxy provides a local representative for an object in a different address space.
  • a virtual proxy creates expensive objects on demand.
  • a protection proxy controls access to the original object. Protection proxies are useful when objects should have different access rights.

Typical Use Case:

  • control access to another object
  • lazy initialization
  • implement logging
  • facilitate network connection
  • to count references to an object

Real world examples:

Credits