Difference between revisions of "Adapter"

From Open Pattern Repository for Online Learning Systems
Jump to navigation Jump to search
(Added category)
m (Edited spelling)
 
Line 66: Line 66:
<references/>
<references/>


[[Category:Design_patterns]] [[Category:Patlet]] [[Category:Software Design Pattern]]<!-- List of other categories the design pattern belongs to. The syntax for linking to a category is: [[Category:<Name of category]] -->
[[Category:Design_patterns]] [[Category:Patlet]] [[Category:Software Design Patterns]]<!-- List of other categories the design pattern belongs to. The syntax for linking to a category is: [[Category:<Name of category]] -->

Latest revision as of 12:45, 17 May 2017


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.