Vladimir Vladimir
А в чем разница? Я имею ввиду по функционалу
в том, что диспатчер - это механизм обратного вызова, когда класс А подписывается на событие класса Б, и когда в классе Б что-то происходит, класс А об этом узнаёт, при этом класс Б ничего не знает об А и никак на него не ссылается
интерфейс - это соглашение о взаимодействии. По сути есть некоторый контракт, который говорит: любой, кто имплементирует интерфейс С должен иметь метод С1 и С2. Есть классы, имплементирующие данный интерфейс. И есть класс А, который ссылается на некоторый объект, который имплементирует интерфейс. Т.е. класс А точно знает, что какой бы класс не скрывался за интерфейсом, у него есть методы С1 и С2, которые можно вызвать