Rx Subject Vs GoF Subject

Чем Rx Subject и Subject в шаблоне GandOfFour Observer различаются?

1 ответ

Решение

Там есть некоторые совпадения:

  • GoF Тема: обработчик подписки, обработчик отмены подписки, отправка уведомления обработчикам

  • Rx Observable: обработчик подписки типа T (неявно отписаться через одноразовую подписку)

  • Rx Observer: обработчик, который получает уведомление типа T (или ошибка, или конец)
  • Rx Subject: Observable + Observer для некоторого типа T

Таким образом, они поддерживают одни и те же основные операции. Я бы предположил, что Rx Team выбрал свое имя, основываясь на использовании GoF. Команда Rx явно хотела разделить функции "субъекта" на отправителя и получателя: акцент в Rx делается на наблюдаемых, а не на субъектах.

Другие вопросы по тегам