В MVP должен ли мой докладчик предоставлять взгляды на это мнение? - PullRequest
0 голосов
/ 15 декабря 2011

Я только учусь, как использовать MVP, и хочу убедиться, что я «делаю все правильно».

У меня есть основной вид со связанным докладчиком. Этот основной вид состоит из нескольких подкомпонентов, по крайней мере, один из которых может быть заменен. Поэтому я превратил эти подкомпоненты в их собственные пары вид / презентатор.

То, как я сейчас настроил свой проект, заключается в том, что основной вид / ведущий запускает проект. Когда создается главный презентатор, он вызывает функции фабрики, которые создают другие пары вид / презентатор. Затем докладчик передает ссылку на каждый из других видов на основной вид, где они затем добавляются.

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

1 Ответ

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

Как правило, Presenter - это отдельный класс, а не View, поэтому они являются модульными, и Presenter может быть самодостаточным (хотя на практике я редко чувствовал необходимость в этом).

Для построения окна я использую WindowPresenter, содержащий WindowView, который

  • строит и выполняет макет окна со всеми Views
  • проводами.Views с их Presenters и Models (если они есть)

Обычно я просто передаю Model и View в конструктор Presenter,хотя я слышал, что другие люди используют структуры внедрения зависимостей.

В общем, звучит так, будто вы делаете все правильно, за исключением того, что Presenter и View - это отдельные классы.Есть много способов соединить триплеты MVP, обычно я думаю, что это сделано из класса Presenter верхнего уровня, но делайте то, что имеет больше смысла.

...