O que deve fazer um controlador de Aplicação?

Estou um pouco confuso no que o controlador de aplicação deve fazer? Porque eu vejo que a funcionalidade também existe em seu padrão MVP para tomar as decisões que o formulário deve ser mostrado quando um botão é clicado? Existem alguns bons exemplos para formulários do Windows que usam o padrão do controlador de Aplicação?

há uma diferença no MVC (ontroler) e no controlador de Aplicação. Eu conheço o MVC (ontroller), eu não tenho certeza quais são as responsabilidades para uma aplicação Controller, e como ele se encaixa em um aplicativo WinForms. Martin Fowler também chama isso de Padrão de controlador de Aplicação, certamente não é a mesma coisa que o MVC (ontroller)?

Author: adriaanp, 2008-09-23

3 answers

Escrevi recentemente um artigo sobre a criação e utilização de um controlador de Aplicaçãono projecto Winforms C#, para dissociar directamente o fluxo de trabalho e os apresentadores dos formulários. Pode ajudar.

Dissociar O Fluxo De Trabalho E Formulários Com Um Controlador De Aplicação

Editar:
Archive.org tem uma cópia mais legível do artigo neste momento.

 12
Author: Derick Bailey, 2018-02-14 08:59:45

Um Controlador de aplicação é um pouco diferente do controlador usado no MVC.

A página de Martin Fowler no Controlador de aplicações .

No caso de um aplicativo WinForms MVP, que parece ser sobre o que o tópico da pergunta é, eu acho. Você Pode colocar toda a lógica para "que forma eu mostrar agora" no apresentador, mas à medida que sua aplicação cresce você vai estar duplicando um monte de código entre apresentadores.

Diz que tens 2 Visualizações que ambos têm um botão para" editar este elemento", ambos teriam que ter lógica para obter um WidgetEditorPresenter e mostrar a vista associada. Se você tem um ApplicationController, você move essa lógica para o ApplicationController, e agora você simplesmente tem uma dependência em todas as suas apresentadores ApplicationController e você pode chamar appController.EditWidget () e irá mostrar a vista correcta.

O controlador da aplicação é um controlador uber que controla o fluxo da aplicação em todo o seu sistema à medida que se move do ecrã para o ecrã.

 12
Author: James Thigpen, 2008-11-28 15:49:22
Pessoalmente, Não tenho experiência com MVP ou winforms, mas já trabalhei com MVC. Espero que seja isto que está a perguntar, caso contrário, ignore completamente a minha resposta.

O C em MVC é responsável por mais do que apenas escolher a próxima vista a ser apresentada ao cliente. Ele detém mais, de preferência todos, a lógica de negócios da aplicação, incluindo o desempenho de tarefas do sistema (como o registro e a aplicação de permissões sobre o fluxo de dados do modelo e para ele).

A sua principal tarefa é, naturalmente, servir a camada de apresentação acima dela e separá-la da camada modelo abaixo enquanto mediam entre eles. Acho que podes pensar nisso como o cérebro da aplicação. Espero que isto ajude.

Yuval =8 -)

 0
Author: Yuval, 2008-09-23 13:02:42