Может ли докладчик иметь состояние? (Схема MVP) - PullRequest
1 голос
/ 16 октября 2011

Я читаю о шаблоне Model-View-Presenter, и я немного сбит с толку: может ли докладчик иметь состояние? Или задача докладчика состоит в том, чтобы группировать только методы, содержащие бизнес-логику, и каждая информация о состоянии должна быть включена в модель?

Вот пример сценария: предположим, мне нужно представить сортируемый постраничный список элементов. В этом случае представление должно просмотреть элементы. Докладчик должен загрузить элементы для просмотра в модель. Куда должны идти две переменные состояния (тип сортировки и текущий индекс страницы), должны ли они рассматриваться как состояние презентатора или части модели?

1 Ответ

3 голосов
/ 16 октября 2011

Это явно не состояние приложения , а состояние просмотра . Не только потеря этого состояния не повредит, но и не влияет на бизнес-логику.

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

...