Model-View-Controller
MVC - это шаблон для архитектуры программного приложения. Он разделяет логику приложения на три отдельные части, способствуя модульности и простоте совместной работы и повторного использования. Это также делает приложения более гибкими и приветственными итерациями. Он отделяет приложение от следующих компонентов:
Чтобы сделать это более понятным, представим простое приложение списка покупок. Все, что мы хотим, это список имен, количества и цены каждого предмета, который нам нужно купить на этой неделе. Ниже мы опишем, как реализовать некоторые из этих функций с помощью MVC.
Model-View-Presenter
Если вы хотите увидеть образец с простой реализацией, проверьте этот пост github
Конкретный рабочий процесс запроса и отображения списка пользователей из базы данных может работать следующим образом:
В чем разница между шаблонами MVC и MVP?
MVC Pattern
- Контроллер основан на поведении и может быть разделен между представлениями
- Может нести ответственность за определение отображаемого вида (Front Controller Pattern )
MVP Pattern
- Вид более слабо связан с моделью. Ведущий отвечает за привязку модели к представлению.
- Легче тестировать модуль, потому что взаимодействие с представлением осуществляется через интерфейс
- Обычно просматривайте карту презентатора один к одному. Сложные представления могут иметь несколько презентаторов.
Пример ViewModel из WPF Application Framework (WAF) показывает, как ViewModel может быть протестирована с помощью модульного тестирования.
Джош Смит тестирует один модуль здесь . Надеюсь, это именно то, что вы ищете.