Purpose: Convert the interface of a class into another interface that the client desires. The Adapter pattern allows classes to work together that otherwise couldn't due to incompatible interfaces because of mismatched interfaces.
Intent: You want to use an existing class, but its interface does not meet your requirements.