Adapter

From Open Pattern Repository for Online Learning Systems
Jump to navigation Jump to search


Adapter
Contributors Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
Last modification May 17, 2017
Source Gamma, Helm, Johnson & Vlissides (1995)[1], Adapter Pattern (2016)[2]
Pattern formats OPR Alexandrian
Usability
Learning domain
Stakeholders

Convert the interface of some class b into an interface a that some client class c understands. The Adapter Pattern lets classes with incompatible interfaces work together. This is sometimes called a wrapper because an adapter class wraps the implementation of another class in the desired interface. This pattern makes heavy use of delegation where the delegator is the adapter (or wrapper) and the delegate is the class being adapted.[1][2]


Context

Problem

Forces

Solution

Consequences

Benefits

Liabilities

Evidence

Literature

Discussion

Data

Applied evaluation

Related patterns

Example

References

  1. 1.0 1.1 Gamma, E., Helm, R., Johnson, R. & Vlissides, J. (1995). Design Patterns: elements of reusable object-oriented software. Addison-Wesley: Boston, MA.ISBN 0-201-63361-2.
  2. 2.0 2.1 Adapter Pattern. (2016). Retrieved November 15, 2016 from http://wiki.c2.com/?AdapterPattern.