Адаптер (Adapter pattern) используется для преобразования интерфейса одного класса в интерфейс другого, который ожидает клиент. Это позволяет классам с несовместимыми интерфейсами работать вместе, которые иначе не могли бы этого делать. Часто применяется для интеграции старого кода с новым, или внешних библиотек, интерфейсы которых отличаются от используемых в проекте.