Quanta segregazione è troppo in questo progetto?

2

Stiamo lavorando all'applicazione di Webforms ASP.NET sviluppata utilizzando WCSF (pattern MVP). Nell'applicazione, c'è una schermata di ricerca che consente all'utente di inserire alcuni campi e visualizzare i risultati.

Abbiamo separato la funzionalità nei controlli utente e ogni controllo utente ha la sua vista e presentatore.

  1. Cerca - > Consiste di campi di ricerca insieme al pulsante di invio. Contiene convalide all'interno del presentatore. Dopo aver convalidato la pagina, solleva l'evento personalizzato.

  2. Criteri di ricerca - > Contiene il controllo DataList per visualizzare i criteri di ricerca in sola lettura sottoscrivendo l'evento di ricerca.

  3. Risultati di ricerca - > Comunica con il controller e vincola la griglia iscrivendosi all'evento di ricerca. Contiene anche l'ordinamento e tutti gli eventi relativi alla rete.

Poiché ciascun controllo ha i propri controlli e comportamenti che seguono i principi SOLID, le visualizzazioni e i presentatori sono sottili e verificabili. Inoltre, ha aumentato la produttività facilitando gli sviluppatori di essere in grado di lavorare su attività in modo indipendente.

Ma dall'altra parte, stiamo pensando se abbiamo sovrastimato e aumentato la complessità introducendo controlli utente, eventi personalizzati, ecc. per questa semplice funzionalità?

    
posta Sunny 04.04.2014 - 04:47
fonte

1 risposta

1

Suggerirei di dare una lettura ai collegamenti contenuti in questo post di Martin Fowler. La mia esperienza personale con MVP è stata su un'applicazione Android e sullo sviluppo di alcuni giochi all'interno del motore Unity3D. Sono un grande fan di questo modello perché è riuscito a permettermi di risolvere alcuni problemi interessanti, ma ho anche imparato ad essere stanco di provare a schiaffeggiare qualche singola regola d'oro su come affrontarlo.

Martin Fowler ha affermato in uno degli articoli che l'utilizzo del Controllore di supervisione e del modello Vista passiva sarebbe probabilmente un'indagine sul problema specifico e decidere su quale dei due o anche quale combinazione dei due modelli risolve il problema il migliore. Per ora sembra che la soluzione sia stata sovradimensionata, ma se i pezzi di funzionalità possono stare da soli e funzionare da soli, non dovrebbe esserci un problema troppo grande. Mi piacerebbe lasciarlo così com'è e chiarire se è troppo complesso una volta che hai effettivamente iniziato a vedere i problemi relativi alla complessità.

    
risposta data 15.06.2017 - 15:48
fonte

Leggi altre domande sui tag