Что нужно знать про StreamController во Flutter/Dart?
Что хотят услышать интервьюеры:
Коротко: StreamController вручную создает поток и позволяет отправлять события через sink, но требует контроля жизненного цикла.
Ответ:
Где применяется:
- нужно закрывать close()
- broadcast меняет поведение подписчиков
- лучше не раскрывать sink наружу
Пример:
final controller = StreamController<int>();
controller.add(1);
await controller.close(); Как отвечать на собеседовании: объясните назначение, границы применения и почему это лучше альтернативы в конкретном сценарии. Типичная ошибка: отдавать controller.sink всем слоям.