Proxy pattern

E679871

The Proxy pattern is a structural design pattern in software engineering that provides a surrogate or placeholder object to control access to another object, often adding lazy initialization, access control, logging, or remote communication.

All labels observed (3)

Label Occurrences
Lazy Load pattern 1
Proxy pattern canonical 1
Service Stub pattern 1

How this entity was disambiguated

Statements (47)

Predicate Object
instanceOf software design pattern
belongsTo Gang of Four design patterns
benefit can add cross-cutting concerns transparently
can defer object creation until needed
can optimize performance via caching
can protect sensitive objects from unauthorized access
separates access control from core functionality
category structural pattern
consequence adds an extra level of indirection
can increase design complexity
can introduce performance overhead
constraint Proxy and RealSubject implement the same interface
definesRole Proxy
RealSubject
Subject interface
describedIn Design Patterns: Elements of Reusable Object-Oriented Software
field software engineering
hasAuthor Erich Gamma
John Vlissides
Ralph Johnson
Richard Helm
purpose add behavior when accessing an object
control access to another object
provide a surrogate or placeholder for another object
relatedTo Adapter pattern
linked to: Adapter

Bridge pattern
Decorator pattern
linked to: Decorator

Facade pattern
linked to: Facade

Flyweight pattern
linked to: Flyweight
supports access control
caching
lazy initialization
logging
monitoring
remote communication
security checks
usedIn aspect-oriented style logging
distributed systems
lazy-loading of large objects
remote method invocation frameworks
security-sensitive applications
variant Caching Proxy
Logging Proxy
Protection Proxy
Remote Proxy
Smart Reference
Virtual Proxy

How these facts were elicited

Referenced by (3)

Full triples — surface form annotated when it differs from this entity's canonical label.

Decorator relatedTo Proxy pattern
Patterns of Enterprise Application Architecture describes Lazy Load pattern
linked to: Proxy pattern
Patterns of Enterprise Application Architecture describes Service Stub pattern
linked to: Proxy pattern