Presenter подписывается на события от View
View эмитит события
Presenter ловит события и делает запросы в Model
При получении ответа от Model, Presenter обновляет View
ModelView подписывается на события от View
View эмитит события
ModelView ловит события и делает запросы в Model
При получении ответа от Model, ModelView обновляет View
Модель (англ. Model), так же, как в классической MVC, Модель представляет собой фундаментальные данные, необходимые для работы приложения.
Представление (англ. View) — это графический интерфейс, то есть окно, кнопки и т. п. Представление является подписчиком на событие изменения значений свойств или команд, предоставляемых Моделью представления. В случае, если в Модели представления изменилось какое-либо свойство, то она оповещает всех подписчиков об этом, и Представление, в свою очередь, запрашивает обновленное значение свойства из Модели представления. В случае, если пользователь воздействует на какой-либо элемент интерфейса, Представление вызывает соответствующую команду, предоставленную Моделью представления.
Модель представления (англ. ViewModel) является, с одной стороны, абстракцией Представления, а с другой, предоставляет обёртку данных из Модели, которые подлежат связыванию. То есть, она содержит Модель, которая преобразована к Представлению, а также содержит в себе команды, которыми может пользоваться Представление, чтобы влиять на Модель.
Вот и все так считают. И по этому делать игры на canvas будут тогда, когда приставки, телевизоры и все остальные устройства будут поддерживать js.
Возможно это и будет когда-то, но точно не в этом двадцатилетии. Ведь досих пор люди не используют тысячу и одну функцию, которую анонсировали пять лет назад, а всемирная поддержка js будет происходить намного-намного и намного дольше. Забейте на js игры, это абсурд.