Adapter
There are two types of Adapter pattern. I have a clear preference for Object Adapters over Class Adapters where possible; I will explain this in detail later.
The Adapter pattern allows an existing class to be used with an interface that it doesn't match. It is often used to allow existing classes to work with others without needing to alter their source code.
This can be quite useful in a polymorphic setting where you are using third-party libraries, each with their own interface.
Fundamentally, an Adapter helps two incompatible interfaces work together. Otherwise incompatible classes can be made to work together by converting the interface of one class into an interface expected by the clients.
Class Adapter
In a Class Adapter, we use inheritance ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access