ASP.NET MVP шаблон и реализация сомнений - PullRequest
1 голос
/ 01 ноября 2011

Меня довольно удивляет паттерн MVP http://webformsmvp.com/

Как бы то ни было, у меня есть определенные сомнения в части реализации.

  1. Необходимо ли, чтобы использовать этот шаблон, я должен реализовать пользовательские элементы управления?

Я всегда думал, что пользовательские элементы управления создаются, если нам нужно повторное использование элементов управления на страницах.

Скажите, если я хочу реализовать и протестировать шаблон MVP, я должен разбить свою простую страницу с элементами управления на множество пользовательских элементов управления, чтобы я мог применить шаблон MVP?

Что, если на моей веб-странице достаточно много автономных компонентов?

Есть ли пробел в моем понимании MVP?

Помощь.

Ответы [ 3 ]

1 голос
/ 01 ноября 2011

Это не , необходимое для реализации пользовательских элементов управления, чтобы использовать этот шаблон, короче говоря.Вкратце, вам нужно представление (может быть aspx или wpf или winform или console и т. Д.), Докладчик, который будет читать / прослушивать события из представления, делать вызов модели и, наконец, заполнять представление нужнымданные, это то, что паттерн MVP.

edit: этот пример достаточно прост.

0 голосов
/ 01 ноября 2011

Я автор упомянутого вами проекта MVP веб-форм. Этот ответ специфичен для этой библиотеки (которая является лишь одной реализацией шаблона MVP).

Нет, вам не нужно использовать пользовательские элементы управления. Если хотите, вы можете сделать так, чтобы ваша страница наследовалась от MvpPage, и тогда она будет работать с самим докладчиком.

Мы рекомендуем вам делать использование пользовательских элементов управления, даже если вы не используете этот элемент управления несколько раз на своем сайте. Это позволяет вам поддерживать представление, логику модели и презентатора в хорошем состоянии и связывать в виде логической единицы для определенной функции. Страницы затем используются исключительно для разметки элементов управления.

0 голосов
/ 01 ноября 2011

Вам не нужно использовать пользовательский элемент управления, чтобы использовать шаблон MVP.MVP - это графический интерфейс, который помогает вам отделить вашу заботу.

Например, если вы пишете веб-страницу ASP.NET для вычисления двух чисел, без MVP или MVC или любого другого шаблона GUI, вы должны записать всю эту логику в коде файла, который очень сложно протестировать.Если вы хотите проверить это, то вы приносите много дополнительных пакетов, таких как ASP.NET framework.

С другой стороны, вы пишете это приложение с использованием MVP, вы бы сделали это.

Просмотр=> Глупее всех трех.Не имеет никакой или минимальной логики.Так что вам не нужно его тестировать.Он просто «сообщает» докладчику о том, что произошло, и выполняет то, что просит докладчик.

Presenter => Управляет потоком

Модель => Бизнес-логика / постоянная логика.

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