Difference between revisions of "Adapter"

From Open Pattern Repository for Online Learning Systems
Jump to navigation Jump to search
(Created patlet for pattern)
 
(Added contributors)
Line 4: Line 4:
{{Infobox_designpattern
{{Infobox_designpattern
|image= <!-- Provide the filename of the image to be displayed (e.g., Design_pattern.png) -->
|image= <!-- Provide the filename of the image to be displayed (e.g., Design_pattern.png) -->
|contributor= <!-- List of contributors separated by a " , "comma. This is optional so you can remove this field if there are no contributors -->
|contributor= [[Erich Gamma]], [[Richard Helm]], [[Ralph Johnson]], [[John Vlissides]]
|source= Gamma, Helm, Johnson & Vlissides (1995)<ref name="Gamma">Gamma, E., Helm, R., Johnson, R. & Vlissides, J. (1995). ''[http://dl.acm.org/citation.cfm?id=186897 Design Patterns: elements of reusable object-oriented software.]'' Addison-Wesley: Boston, MA.''ISBN 0-201-63361-2.''</ref>, Adapter Pattern (2016)<ref name="Adapter">Adapter Pattern. (2016). Retrieved November 15, 2016 from http://wiki.c2.com/?AdapterPattern.</ref>
|source= Gamma, Helm, Johnson & Vlissides (1995)<ref name="Gamma">Gamma, E., Helm, R., Johnson, R. & Vlissides, J. (1995). ''[http://dl.acm.org/citation.cfm?id=186897 Design Patterns: elements of reusable object-oriented software.]'' Addison-Wesley: Boston, MA.''ISBN 0-201-63361-2.''</ref>, Adapter Pattern (2016)<ref name="Adapter">Adapter Pattern. (2016). Retrieved November 15, 2016 from http://wiki.c2.com/?AdapterPattern.</ref>
|dataanalysis= <!-- If applicable, list of data analyses used for mining the pattern separated by a " , "comma -->
|dataanalysis= <!-- If applicable, list of data analyses used for mining the pattern separated by a " , "comma -->

Revision as of 19:28, 15 February 2017


Adapter
Contributors Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
Last modification February 15, 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.