Java Reference
In-Depth Information
Chapter 3. Structural Patterns
Introduction to Structural Patterns
Structural patterns describe effective ways both to partition and to combine the elements of an application. The
ways structural patterns affect applications varies widely: for instance, the Adapter pattern can let two
incompatible systems communicate, while Facade lets you present a simplified interface to a user without
removing all the options available in the system.
Adapter - To act as an intermediary between two classes, converting the interface of one class so that it can be
used with the other.
Bridge - To divide a complex component into two separate but related inheritance hierarchies: the functional
abstraction and the internal implementation. This makes it easier to change either aspect of the component.
Composite - To develop a flexible way to create hierarchical tree structures of arbitrary complexity, while
enabling every element in the structure to operate with a uniform interface.
Decorator - To provide a way to flexibly add or remove component functionality without changing its external
appearance or function.
Facade - To provide a simplified interface to a group of subsystems or a complex subsystem.
Flyweight - To reduce the number of very low-level, detailed objects within a system by sharing objects.
Half-Object Plus Protocol (HOPP) - To provide a single entity that lives in two or more address spaces.
Proxy - To provide a representative of another object, for reasons such as access, speed, or security.
 
 
Search WWH ::




Custom Search