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

При использовании C++ есть множество фреймворков (Qt, boost, ...), в которых тем или иным способом реализован механизм сигналов и слотов. Однако, этот механизм не является самым простым.


При неправильном использовании он размазывает логику поведения объекта. Например, вместо прямого вызова одного метода B из другого метода A происходит привязка вызываемого метода B к сигналу, посылаемому в конце первого метода A.


С другой стороны, сигнал-слоты позволяют использовать честную посылку сообщений и их многопоточную обработку, скрывая детали реализации, такие, как event loop и message queue.


Что вы можете сказать за или против использования сигналов и слотов?
  • Вопрос задан
  • 3499 просмотров
Решения вопроса 2
stepank
@stepank
говорю из опыта работы с Python и JavaScript. в некоторых фреймворках тоже встречаются идеи аналогичные слотам и сигналам, в них есть две удобные веди:
1. у одного события (сигнала) может быть несколько обработчиков, это уже называли
2. отправитель сигнала может не думать о том, кто его будет слушать, и будет ли слушать вообще
Ответ написан
Комментировать
BuriK666
@BuriK666
Компьютерный псих
у одного сигнала может быть много слотов, а у одного слота может быть много сигналов и это очень удобно (QT)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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