Comunicazione tra più presentatori in MVP

3

Sto progettando un'applicazione utilizzando il pattern MVP, ma alcuni dei casi limite per il sistema si basano sulla comunicazione tra più relatori.

View 1 calls Presenter 1 which does Operation A returning Result X.

View 2, View 3, and View 4 are all interested in Result X. They each have their respective presenters, and can each respectively do Operation A and get Result X.

La nostra applicazione ha un MainView e un MainPresenter che in pratica ospitano solo le altre visualizzazioni e relatori.

Una delle soluzioni era fornire i riferimenti MainPresenter di Presenter 1 , Presenter 2 , Presenter 3 e Presenter 4 . E il risultato di Operation A chiama gli altri presentatori.

Un altro era implementare un livello Facade che contiene riferimenti ad altri relatori e facilita le altre chiamate.

Come hai gestito questa situazione?

    
posta Cameron 10.11.2014 - 23:33
fonte

1 risposta

4

Nella mia esperienza, se un risultato è necessario in più punti dell'interfaccia utente, questo mi suggerisce che il metodo per calcolarlo è una regola aziendale universale, e quindi questa regola non ha attività da implementare in un singolo presentatore: dovrebbe invece far parte del modello di dominio. A quel punto, non è necessaria alcuna comunicazione tra i relatori, a parte che tutti fanno riferimento allo stesso modello di dominio.

    
risposta data 10.11.2014 - 23:45
fonte