Создание клиентского приложения Swing, о чем следует уведомлять по шине (система сообщений всего приложения, похожая по концепции на JMS, но намного более простая) и о чем следует уведомлять, используя прямые прослушиватели?
Когда я пользуюсь автобусом, у меня всегда возникает ощущение, что «я понятия не имею, кто и где это использует». Кроме того, нет установленного порядка, трудно наложить вето на события, трудно точно знать, что происходит в установленное время.
С другой стороны, использование слушателей означает либо прямую ссылку на исходный объект (связывание), либо передачу ссылки через множество преобразований (A - b_listener -> B, B - c_listener -> C только потому, что необходимо знаю что-то, что только C может сказать, но B не интересуется).
Итак, есть ли какое-то эмпирическое правило по этому поводу? Любое предложение, как сбалансировать?