2010-01-19 15 views
7

Quando ho sentito parlare di ASP.NET MVC, pensavo che avrebbe significato applicazioni con tre parti: modello, vista e controller.Il modello-Repository-Service-Validator-View-View Pattern pattern di progettazione del controller (?)

Poi ho letto NerdDinner e ho imparato i modi di repository e view-models. Successivamente, ho letto this tutorial e presto sono diventato venduto sulle virtù di un livello di servizio. Infine, ho letto lo Fluent Validation documentation e sarò dannato se non avessi finito di scrivere un gruppo di validatori.

Stasera, ho fatto un passo indietro e ho pensato a quello che era diventato del mio progetto. Sembra che sia diventato vittima del modello di design equivalente a "feature creep". In qualche modo sono passato da Model-View-Controller a Model-Repository-Service-Validator-View-ViewModel-Controller. Vuoi accoppiato sciolto e ASCIUTTO? Abbiamo ottenuto il tuo sciolto accoppiamento e ASCIUTTO proprio qui! Ma mi chiedo se questo potrebbe essere un caso di troppo di una cosa buona.

Ho ragione di essere preoccupato? O questo in realtà non è così folle come sembra? Da un lato, sembra strano avere così tanti livelli. D'altra parte, ogni livello ha uno scopo ben definito che ha senso per me. Anche le applicazioni MVC sono state trasformate in app MRSVVVMC? In caso contrario, che aspetto hanno? Dov'è il giusto equilibrio?

risposta

4

Se si dispone di un modulo con tre attributi, questo è eccessivo.

Ma se si dispone di un'applicazione "reale" e le responsabilità di ciascun livello sono ben definite, lo considero piuttosto ragionevole.

1

Mi sembra che tu abbia trovato uno schema e sia andato alla ricerca di un problema. Dovresti trovare un problema e utilizzare lo strumento appropriato dalla tua casella degli strumenti ... non tutti gli strumenti. A meno che non si tratti di un esercizio accademico, naturalmente.

Problemi correlati