и над ней делается ViewModel
в модели меняются данные и VM должна про это узнать
вот тут пишут, что обе этих сущности должны реализовать INotifyPropertyChanged
в этом месте мне кажется, что есть дублирование кода и VM становится какой-то лишней сущностью
Если сделать первый шаг и в Model реализовать INotifyPropertyChanged, то можно сделать пустой класс VM и просто унаследовать его от M и всё как-бы должно работать
возможно, для каких-то сложных случаев это будет иметь смысл, но на простых моделях и вьюмоделях у меня это вызывает диссонанс
я что-то упускаю из вида?
В VM делаем всю работу с UI которая необходима, вся бизнес логика в моделях. INotifyPropertyChanged как по мне лучше вообще стараться избегать в моделях
да, но вопрос-то в том, как оповестить VM, что M изменилась? вот у меня в модель стекаются состояния устройств и я хочу отобразить это состояние в V по таймеру вызывать метод, который переложит состояние из M в VM и вызовет нужные OnPropertyChanged ?
IObservable Pattern почитай
а его на всю модель вешать и запускать апдейт VM когда что-то внутри поменялось? мне кажется, это практически тот же INotifyPropertyChanged с его OnPropertyChanged а если передавать внутри апдейта что именно изменилось, то вообще 1:1 по сути
Обсуждают сегодня