Come si può utilizzare un presentatore per più viste in MVP

7

Sto usando MVP per creare un'applicazione Android, che prende i dati dal server e imposta su attività.

Sono costretto a creare un relatore per ogni vista.
Ogni vista è unica perché ogni vista ha diverse visioni di testo / etichette.
Il relatore leggerà i valori dal modello e dal metodo call setter per ciascun controllo in vista.
Per la seconda vista, avrò bisogno di un presentatore diverso, poiché ho bisogno di chiamare altri metodi setter nell'interfaccia vista.

Questo significa che view - presenter avrà una relazione uno a uno.
È corretto per view-presenter avere una relazione uno a uno in MVP o il mio approccio non è corretto?

EDIT: userò un relatore per ogni vista perché devo. Perché ogni presentatore implementerà la funzionalità unica per ogni vista.

Tuttavia ciò pone un problema di riusabilità. I presentatori hanno un sacco di codice comune. es. chiamare l'helper per caricare i dati dall'URL ecc. Quindi sto pensando di usare il modello di fabbrica astratto o il modello di strategia. Il problema con il modello di fabbrica astratto è, se domani il mio presentatore ha bisogno di estendere un'altra classe, non può essere fatto perché sto codificando in java. Quindi è consigliabile utilizzare il modello di fabbrica astratto in java, per il gruppo di presentatori?

    
posta user4057066 30.10.2014 - 12:59
fonte

1 risposta

8

Sì, va bene.

L'applicazione del modello di progettazione MVP significa avere triplette MVP (model-presenter-view) per ogni oggetto (anche un po 'complesso) da visualizzare. La logica va al modello e il presentatore è lì solo per incollare le cose.

    
risposta data 30.10.2014 - 13:29
fonte

Leggi altre domande sui tag