Sto avendo alcune domande durante la progettazione di un'architettura per un progetto attorno a MVC. (È un progetto SDK C ++ / Marmalade, non sto usando alcun framework MVC particolare, ne sto realizzando uno.)
Su diversi articoli (come sull'articolo originale di Steve Burbek ) continuo a leggere il concetto di "triade MVC" che mi tormenta da quando ho preso questo concetto piuttosto letteralmente. Quando l'ho letto la prima volta sembrava che un'applicazione fosse costruita attorno alle unità "triade MVC" - una per ogni pezzo dell'interfaccia utente che supponevo -, ma lo trovo piuttosto poco flessibile e penso che non sia così che MVC avrebbe dovuto essere usato. Quindi, approfondendo ulteriormente la questione, ho trovato diversi esempi di accoppiamento stretto tra controller e vista, vale a dire la relazione 1 a 1: TextEditView ha TextEditController.
Ma quando torno al mio progetto trovo che potrebbe essere utile avere un controller (per "unità logica", come AddElementController) e diverse viste per quel controller specifico.
Sto chiaramente pensando a qualcosa come un AddElementController che dovrebbe avere una sorta di interfaccia utente a schede. Dovrei avere un AddElementController che ha un AddElementTabView e diversi AddImageView, AddSoundView, ecc. Per le schede? O dovrei avere un 'sub-controller' diverso per ogni vista della scheda?
In breve, e per quanto riguarda il modello MVC (non la comprensione / implementazione particolare del framework X di questo modello), è corretto avere più viste per un controller o ogni vista dovrebbe avere il suo controller particolare?
Inoltre, è corretto conservare alcune informazioni sullo stato sul controller o dovrebbe essere apolide (il che significa che lo stato dovrebbe essere posizionato su un modello di stato non di dominio)?
Grazie a tutti in anticipo.