O padrão Adapter permite que objetos com interfaces incompatíveis trabalhem juntos envolvendo um deles com a interface que o outro espera. Ele atua como um tradutor entre duas interfaces, possibilitando integração sem modificar o código existente.
O que o padrão Adapter faz
ADAPTER → convert one interface into another that a client expects (a "translator"):
→ wrap an object whose interface is INCOMPATIBLE, exposing the interface the client needs
→ the adapter translates calls/data between the two interfaces
→ makes incompatible things work together WITHOUT changing either's code
