Ho un modulo UI scritto usando model-view-presenter che ha, tra le altre cose, una listbox contenente un numero di oggetti di dominio diversi. Il modulo contiene anche un pulsante aggiungi / aggiorna che apre una finestra di dialogo che consente all'utente di aggiungere / aggiornare un oggetto dominio.
Il modulo oggetto dominio è generale e viene utilizzato per raccogliere informazioni di base, come il nome dell'oggetto. Si tratta essenzialmente di un umile dialogo che raccoglie informazioni e invia un evento con tali informazioni quando il modulo viene chiuso correttamente consentendo all'oggetto dominio di essere aggiunto o aggiornato di conseguenza.
Per chiarire un po 'di più, non sono sicuro in una serie di aree diverse:
- Esiste un modello di interazione standard o ci sono schemi di interazione standard da utilizzare tra le UI quando si utilizza MVP?
- La responsabilità per la visualizzazione di qualsiasi modulo o finestra di dialogo richiesti spetta al presentatore, alla vista o a nessuno dei due?
- Il fatto che io stia usando un umile dialogo per la raccolta di informazioni viola "raccontare, non chiedere" e rendere le cose più difficili del necessario?
- L'interfaccia utente della risposta è specifica e, in tal caso, quali domande potrebbero guidarmi a una buona risposta?
Altre note:
- Sembra che la responsabilità di visualizzare i moduli e i dialoghi richiesti sia più legata alla vista che al presentatore, in quanto altri punti di vista potrebbero utilizzare mezzi alternativi per raccogliere tali informazioni: il relatore deve solo essere opportunamente avvisato.
- Sono più interessato ai modelli e alle pratiche correlate rispetto ai dettagli tecnici.
- Nello spirito di basso accoppiamento, di solito utilizzo il passaggio di messaggi tra moduli e componenti.