Чем StreamController отличается от Subject/RxDart?

FlutterMiddle+: проектирует решение с учетом lifecycle, ошибок и поддержкиAsyncТеорияasyncdartstream-controllerstreamcontroller

Что хотят услышать интервьюеры:

Отличие от Subject/RxDart: StreamController обычно используют, когда нужна задача из контекста «StreamController», а Subject/RxDart применяют в другом уровне абстракции или при другой сложности.

Ответ:

Как выбирать:

  • нужно закрывать close()
  • broadcast меняет поведение подписчиков
  • оцените стоимость поддержки, тестируемость и понятность для команды

Ошибка: выбирать инструмент по привычке, а не по требованиям конкретного flow. Сильный ответ: приведите пример, когда StreamController уместен, и пример, когда лучше выбрать Subject/RxDart.

Источники

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