com.dp4j
Annotation Type Facade


@Documented
@Target(value=TYPE)
public @interface Facade

Facade is a single object that represent an entire subsystem. Intent: Provide a unified interface to a set of interfaces in a subsystem. Facade defines a higher-level interface that makes the subsystem easier to use. [GoF, p185] Facade UML Class Diagram

Example

Consumers encounter a Facade when ordering from a catalog. The consumer calls one number and speaks with a customer service representative. The customer service representative acts as a Facade, providing an interface to the order fulfillment department, the billing department, and the shipping department. [Michael Duell, "Non-software examples of software design patterns", Object Magazine, Jul 97, p54]

See Also:
Facade, Encapsulation of Entities (Adapter, Proxy, Facade)



Copyright © 2011. All Rights Reserved.