In Android ci sono molte diverse implementazioni per MVP. La maggior parte di loro preferisce utilizzare l'attività o il frammento come vista, alcuni li renderebbero dei presentatori e ancor meno separerebbero l'attività o il frammento dall'MVP e far risiedere le classi correlate a Modello, Visualizza e Presentatore all'interno Classe Activity o Fragment.
Le prime 2 opzioni sembrano adattarsi al framework di Android diventando MVP, ma la terza opzione se applicata correttamente sta creando i 3 livelli all'interno del framework Android.
In Andorid-MVP la vista è quasi sempre raccomandata per essere una vista passiva, e il presentatore come un intermediario tra il modello e la vista. Quindi avere o essere un'attività o un frammento sembra dare loro più responsabilità. D'altro canto, se MVP si trova all'interno di un'attività o di un frammento, tutti e tre i livelli dovrebbero comunicare con l'attività o il frammento per ottenere l'accesso al sistema (ottenere contesto, ottenere risorse, navigare o attivare eventi basati su eventi del ciclo di vita) ).
Entrambi hanno pro e contro, ma quale sarebbe più aderente alle regole di MVP?