In MVP, la vista dovrebbe avere accesso agli oggetti Dominio?

4

Diciamo che ho un modulo per rappresentare un utente.

Quando si preme il pulsante "Salva", un oggetto User deve essere:

  1. costruito dalla vista in base all'input, quindi passato al modello tramite Presenter e quindi inserito nel database dal modello,
  2. costruito dal Modello utilizzando i dati Visualizza (tramite Presenter) e quindi inseriti nel database dal Modello.

In sostanza, la domanda è se la vista debba avere accesso agli oggetti Dominio (come User ).

    
posta Sipo 21.11.2017 - 17:03
fonte

1 risposta

3

Il principio chiave nell'architettura MVP (inizialmente introdotto da Talligent nel 1996), è che il relatore funge da intermediario tra la vista e il modello.

L'idea di base è che in un'architettura client-server, il relatore potrebbe essere diviso tra il server in cui viene mantenuto il modello di dominio e il client che si occupa della vista.

Questo è il motivo per cui dovresti optare per l'opzione 2. Tutta la manipolazione dei dati deve passare attraverso il presentatore.

Tieni presente che l'MVP originale consente un collegamento diretto tra il modello e la vista, ma solo a scopo di lettura (tramite una notifica distribuita M- > V per informare che i dati sono cambiati, e un accesso remoto V- > M per leggere i dati, in una relazione soggetto-osservatore). Alcuni sostengono tuttavia che canalizzare questo tramite il presentatore sarebbe preferibile.

    
risposta data 21.11.2017 - 18:30
fonte

Leggi altre domande sui tag