Как слабая связь MVVM по сравнению с MVP? - PullRequest
0 голосов
/ 21 декабря 2011

Я смотрел видео Джозе Смита и читал некоторый учебник о MVVM, но я не понимаю, как MVVM имеет слабую связь, то есть View и ViewModel.(все еще новичок в MVVM, только пытался создать проект пары с ним.)

В MVP все View, Model, Presenter имеют интерфейс, поэтому их можно заменить или смоделировать для модульного тестирования.

Но в MVVM я не вижу людей, использующих интерфейс в View или ViewModel.Насколько я понимаю, ViewModel абстрагирует данные из Model и предоставляет их в виде свойств для представления бизнес-логики и манипулирования данными с моделью.

Так что, если у меня есть ViewModel с методом .SaveData () и некоторымисвойства, которые используются View, как мне заменить другие ViewModel, если у них нет интерфейса?

Может кто-нибудь объяснить мне, как MVVM имеет слабую связь?

1 Ответ

1 голос
/ 21 декабря 2011

MVVM также предполагается реализовать с точки зрения интерфейсов.Если у вас есть класс MyViewModel, он также реализует IMyViewModel, чтобы его можно было смоделировать для тестирования.То же самое касается зрения.Таким образом, в этом конкретном смысле MVVM не отличается от MVP.

Кроме этого, определение «слабой связи», ну ... слабое, поэтому вам нужно быть более конкретным, если естьдругие вещи, которые вы хотите пояснить.

Примечание: в MVVM было бы идиоматично иметь свойство SaveDataCommand вместо голого SaveData метода (хотя, конечно, команда в любом случае реализована как метод).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...