// структурный паттерн проектирования, который // позволяет объектам с несовместимыми интерфейсами работать вместе const adapteeMessage = 'Вызов адаптирующегося метода'; class Adaptee { String method() { print('Вызов адаптирующегося метода'); return adapteeMessage; } } abstract class Target { String call(); } class Adapter implements Target { String call() { var adaptee = Adaptee(); print('Вызов адаптирующегося метода'); return adaptee.method(); } } void main() { var adapter = Adapter(); var result = adapter.call(); print(result == adapteeMessage); }