Подскажите пожалуйста, что такое Model-View-ViewModel (MVVM)? Я понимаю, что это какой-то паттерн, но все эти определения в википедии мне не понять, кто нибудь может пожалуйста объяснить это как для чайника, если возможно то с примерами. Спасибо.
С уважением.
Это паттерн, в основе которого лежат события изменения состояния объекта для синхронизации изменений. Предположим, что есть программа с моделью данных, пользовательским интерфейсом и бизнес-логикой. При изменении модели меняются данные пользовательского интерфейса. При изменении пользовательского интерфейса меняются данные модели.
Делается это ради того, чтобы бизнес логика была абсолютно отделима от пользовательского интерфейса и не занималась его обновлением. Таким образом, можно создавать сложные компоненты пользовательского интерфейса с простой интеграцией логики
Другой вопрос, что применение MVVM требует проектирования достаточно сложной модели данных (значительно сложнее той, что применена в том же redux), а код получается ОЧЕНЬ громоздким (менее чем в MVC, но наследует грабли уже в виде нагромождения событий)
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости