Действительно ли Messenger — это антипаттерн? Насколько мне известно существует возможность использовать RxJava или аналог для C#, чтобы избежать использования различных MOM(Message Oriented Middleware) JMS и прочих, настолько часто - насколько это возможно.
1. Вопрос в том почему различные реализации Messenger'а - называют антипаттерном и почему стоит избегать его использования?
2. Когда все-таки использование этого паттерна оправдано?

21 Авг 2019 в 06:30
158 +1
0
Ответы
1

Messenger, как паттерн проектирования, действительно имеет свои недостатки и может считаться антипаттерном в определенных случаях. Вот несколько причин, почему стоит избегать использования Messenger:

Усложнение структуры приложения: При использовании Messenger'a в приложении может возникнуть сложность в организации и отслеживании взаимодействия между компонентами, так как сообщения могут пересылаться через разные каналы и быть обработаны разными обработчиками.

Увеличение времени отладки и поддержки: При возникновении проблем с передачей сообщений через Messenger может быть сложно определить причину ошибки и ее местоположение, что затрудняет отладку и поддержку приложения.

Потеря контроля над потоком данных: Использование Messenger'a может привести к потере контроля над потоком данных, так как сообщения могут быть обработаны в любом порядке и в любом месте, что может привести к непредсказуемому поведению приложения.

Однако, есть случаи, когда использование Messenger'a оправдано:

Когда требуется распределенная коммуникация: Если приложение состоит из отдельных компонентов, которым необходимо взаимодействовать друг с другом через разные уровни или слои, использование Messenger'a может быть удобным способом организации коммуникации.

Когда нужна асинхронная обработка: Messenger позволяет организовать асинхронную обработку сообщений, что может быть полезно в ситуациях, когда необходимо обрабатывать данные параллельно или в неопределенном порядке.

Таким образом, использование Messenger'a следует рассматривать с учетом специфики конкретного приложения и его потребностей, а также учитывать потенциальные недостатки данного паттерна и возможные способы их устранения.

20 Апр в 13:17
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 588 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир