Привет всем, а вот поделитесь опытом, в каких случаях стоит

использовать именно event dispatcher? , а то я как то всё на интерфейсах делаю.

15 ответов

14 просмотров

две совершенно не связанные вещи

Блин, блин, блин, да откуда вообще пошла эта битва диспатчеров и интерфейсов? Между ними вообще ничего общего нет, это совершенно разные технологии. Может в сети какой-то тутор есть, после которого все начинают задаваться этим вопросом?

Aleksei DTG
Блин, блин, блин, да откуда вообще пошла эта битва...

ну наверно типо для коммуникации между классами

Коротко диспетчер ничего не знает о тех кто будет обрабатывать сообщение. Для интерфейса нужен конкретный объект

Dim Alek
ну наверно типо для коммуникации между классами

Так отлично, есть сто мильёнов способов коммуникации между классами, почему коллбэки всегда противопоставляют интерфейсам, я вообще не понимаю

Aleksei DTG
Так отлично, есть сто мильёнов способов коммуникац...

ну я не задал вопрос, я предположил просто.

Maxx- Автор вопроса
Aleksei DTG
Блин, блин, блин, да откуда вообще пошла эта битва...

Мне просто интересен конкретный пример применения диспатчера, когда использование интерфейса не походит.

Maxx- Автор вопроса
Maxx
И...

ну в этом случаи я бы сделал делегат

Maxx
И...

это единственное применение диспатчеров, и оно никак не заменяется интерфейсами, это две совершенно разные вещи, делегаты нужны, чтобы избавиться от зависимостей одного объекта от другого, а интерфейсы способ создания абстрактного набора методов

Maxx
Мне просто интересен конкретный пример применения ...

разница в том, как определяется кто получит "событие". если тот, кто посылает событие и тот, кто определяет список получателей - это один и тот же класс - то тут надо использовать интерфейс. если посылает событие один класс, а получать это событие хочет другой класс (и он же сам решает, хочет он его получать или нет) - то тут нужен event dispatcher

shenkns
это единственное применение диспатчеров, и оно ник...

Только на самом деле делегат не освобождает от зависимости. Тот, кто на него подписывается - становится зависимым от владельца делегата. Я понимаю, что ты имел ввиду то, что объект, в котором генерируются события, не будет волноваться о том кто и как на них подписался, но тем не менее связь никуда не девается

Aleksei DTG
Только на самом деле делегат не освобождает от зав...

но он освобождает от зависимости того, полем которого является этот делегат

shenkns
но он освобождает от зависимости того, полем котор...

Ну да, о чём я и написал, то обратная зависимость сохраняется :)

Похожие вопросы

Обсуждают сегодня

Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Вот еще странный косяк, подскажите как бороться. Я git clone сделал себе всего embassy и примеры там запускаю. Всё хорошо. Но вот решил в cargo.toml зависимости не как в приме...
Lukutin R2AJP
5
А в каком формате фреймы? Сам формат сейчас придумываешь, или что-то готовое нужно распарсить?
Okhsunrog
5
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Раз начали говорить про embassy, то присоединюсь со своими парой вопросов. 1) Есть ли сопоставимые аналоги для асинхронного кода в emdebbed? 2) Можно ли внутри задач embassy ...
NI_isx
6
сделал сайт, прикрутил в боте сайт, и виджет логина. как автоматически логинить пользователя в аккаунт(телеграм), при входе с бота?
Александра Чернивецкая
5
Карта сайта