Evoluzione del mio design MVC con una nuova complessità dell'interfaccia utente

0

Ho un'applicazione di strumentazione desktop in MVC. Attualmente ho avuto 2 versioni dell'applicazione, quindi 2 viste e 2 controller, ognuno con codice comune in una classe base. Le viste reagiscono direttamente agli eventi inviati dal modello e il controller ha una coda messaggi per collegare le azioni dell'utente al modello. In particolare la coda dei messaggi è comune ai due controller.

In queste due versioni la logica dell'interfaccia utente è molto semplice, principalmente reagendo ai pulsanti, passando i parametri al controller e. Nella prossima versione ho alcune attività del flusso di lavoro, quindi l'interfaccia utente diventerà più complessa.

Voglio anche che le versioni iniziali funzionino ancora.

Dove inserisco questa complessità? Dovrei aggiungere un altro ciclo di messaggi che è in-between? Appartiene al controller o alla vista? Dove dovrei inserire lo stato del mio flusso di lavoro? O dovrei costruire una vista intelligente?

    
posta CharlesB 12.04.2011 - 18:36
fonte

1 risposta

1

MVC è un'architettura molto basilare. Hai un modello - Visualizza - Controller. È comunque necessario creare i propri livelli per supportare MVC, come BL / DL, livello di servizio, metodi di supporto, qualunque sia il progetto richiesto.

Il controller è il primo punto di ingresso. Quindi, ti consiglio di effettuare chiamate ad altri livelli nel controller

MyViewController()
{
  ServiceLayer serviceLayerCalls = new ServiceLayer();
  BusinessLayer businessLayerCalls = new BusinessLayer();

  businessLayerCalls.Method()...etc

  return MyView();
}

Va bene avere un po 'di codice nella vista, ma cerca di assicurarti che appartenga completamente lì (E. un helper html). Riunisci le routine lunghe nei metodi.

    
risposta data 12.04.2011 - 18:47
fonte

Leggi altre domande sui tag