Разница в структурах MVC и MVVM на конкретном примере - C#
Формулировка задачи:
Всем привет. Люди в теории понимаю, как работает MVC, но не совсем понимаю разницы между MVC и MVVM. Смотрел ролики, читал ресурсы, но очень хотелось бы разобрать на конкретном примере. Вот я на WPF создаю игру Морской Бой. Поправьте, если я ошибаюсь. Для того чтобы следовать структуре MVC, я создаю три папки, главное окно идёт в View. Я создаю поле из 100 клеток, само поле - это тоже view. Но его данные, такие как количество клеток, длина, ширина, цвет - это уже данные, которые могут хранть в файле field.xml в папке Model, так? Когда я навожу мышкой на одну из клеток, то она меняет свой цвет, стало быть на событие мышки в файле этого поля который находится в папке View я вызываю метод ChangeColor, который написан уже в контроллере. То есть у меня есть gridModel, gridView и gridController. Правильно ли я понял структуру MVC? Если да, то какие изменения нужно сделать, чтобы получить структуру MVVM? Заранее спасибо.
Решение задачи: «Разница в структурах MVC и MVVM на конкретном примере»
textual
Листинг программы
public bool IsLegendHidden
{
get { return isLegendHidden; }
set
{
isLegendHidden = value;
ToggleControl("Legend", hideLegend);
}
private void ToggleControl(string hint, bool flag)
{
foreach (TextBlock textBlock in GameCanvas.Children.OfType<TextBlock>().Where(txtBlock => txtBlock.Name.Contains(hint)))
{
textBlock.Visibility = flag ? Visibility.Hidden : Visibility.Visible;
}
}
}