Devo rendere il mio ASP -NET MVC livello N?

0

Attualmente sto costruendo un sito Web molto piccolo, circa 20-30 visualizzazioni, 10 controller.

So che MVC è solo un modello di progettazione e dovrebbe essere solo il livello di presentazione più alto. Sono attualmente in una fase di sviluppo quando inizi a mettere in discussione te stesso e quello che stai facendo. Sembra che questo piccolo sito web non abbia "bisogno" dell'architettura N-tier perché è troppo piccolo per quello. Ma alla lunga forse ne vale la pena.

Vale la pena il tempo di migrare su N-Tier?

C'è qualche livello di astrazione quando dovresti migrare a n-tier? C'è qualche punto magico quando il progetto diventa troppo grande? O dovrebbe essere fatto direttamente all'inizio dello sviluppo?

    
posta J.Olsson 14.07.2014 - 05:18
fonte

3 risposte

4

Bene, valutiamo prima quello che stai chiedendo.

La tua applicazione è attualmente un'applicazione Model-View-Controller. Cosa significa? Significa che la tua applicazione ha:

  • Un livello di presentazione, la vista,
  • Un livello di elaborazione delle applicazioni, il controller e
  • Un livello di gestione dati, il modello.

Cosa ci vorrebbe per convertirlo in N-tier? Bene, secondo Wikipedia, un'applicazione multi-livello è

a client–server architecture in which presentation, application processing, and data management functions are physically separated.

Hmm, sembra che tu abbia già un multi-livello.

Se non lo acquisti, allora trasforma il tuo Data Layer in un servizio web. In questo modo l'applicazione MVC sarà in grado di accedervi, così come la tua applicazione mobile, l'applicazione desktop, o qualsiasi altra applicazione che si desidera scrivere.

In ogni caso, il multi-tier riguarda principalmente il ridimensionamento delle applicazioni su più macchine. La scrittura di servizi Web lo fa in parte, ma divide anche parti della tua applicazione su più macchine sulla stessa intranet. La necessità o meno di tutto ciò dipende interamente dall'applicazione e dal suo ambito.

    
risposta data 14.07.2014 - 07:29
fonte
1

Diamo un'occhiata ad alcune domande che chiedo quando sto costruendo un sito web:

  • Ti aspetti che il tuo sito web cresca in termini di visualizzazioni o complessità?
  • Ti aspetti che ci siano più "pagine" in futuro?
  • Sai che in futuro avrai bisogno di un fornitore di dati sul back-end, anche se non al momento?
  • Avrai altri sviluppatori che lavorano su questo sito, possibilmente contemporaneamente a te?

Se puoi rispondere a tutte (o la maggior parte) delle domande precedenti, allora vale la pena e il tempo per costruire il framework n-tier. Se ci saranno più sviluppatori che lavorano contemporaneamente allo stesso tempo, questo potrebbe quasi garantire (almeno a me) che lo sforzo aggiuntivo varrà la pena.

Se non puoi, potrebbe non valerne la pena.

    
risposta data 14.07.2014 - 06:34
fonte
-1

Sì, dovresti. MVC è un pattern a livello di presentazione. Un giorno potresti voler aggiungere altri livelli di presentazione come uno WPF o uno mobile. 3 livelli ti consentiranno di farlo mentre riutilizzi il livello della logica aziendale e il livello di accesso ai dati.

    
risposta data 20.04.2017 - 11:07
fonte

Leggi altre domande sui tag