Я не очень знаком с ObservableCollection, но его реализация, кажется, предоставляет мне удобный способ обновления пользовательского состояния коллекций на основе любой операции добавления / удаления / замены / очистки.
Однако примеры, на которые я смотрел, обычно ссылаются на них в контексте привязки данных WPF / WinForms.
Приносит ли это какие-либо нежелательные накладные расходы / зависимости, которых я должен опасаться, т.е. в моем сценарии (простое обновление расширенного состояния, которое я добавил в коллекцию на основе операций добавления / удаления и т. д.), было бы лучше просто реализовать коллекцию или подобное и обновить расширенное состояние путем переопределения каждой операции добавления / удаления / замены / очистки?