Застосування: Патерн можна часто зустріти в Ruby-коді, особливо там, де потрібна конвертація різних типів даних або спільна робота класів з різними інтерфейсами.
Ознаки застосування патерна: Адаптер отримує конвертований об’єкт у конструкторі або через параметри своїх методів. Методи Адаптера, зазвичай, сумісні з інтерфейсом одного об’єкта. Вони делегують виклики вкладеному об’єктові, перетворивши перед цим параметри виклику у формат, підтримуваний вкладеним об’єктом.
Концептуальний приклад
Цей приклад показує структуру патерна Адаптер, а саме — з яких класів він складається, які ролі ці класи виконують і як вони взаємодіють один з одним.