8. 8
Motivation
Neuimplementierung steht oft nicht zur Debatte
Legacy Code ist unumgänglich
MVP ist State-of-the-Art
Code Qualität ist relevant
Was ist Eure Motivation?
12. 12
Lösung: Model-View-Presenter
View
• Typischer Weise Activity (oder Fragment)
• Zeigt die Daten an
• Teilt dem Presenter Interaktionen mit
• Hat Referenz auf Presenter
Presenter
• Mittelsmann zwischen View und Model
• Erhält Daten vom Model und der Business-Logik
und bereitet diese für den View auf
• Entscheidet, was bei Interaktionen passiert
• Hat Referenz auf View und und Model
Model
• Beinhaltet die Buisness-Logik
• Sollte ebenfalls gut Strukturiert sein,
z.B. Schichten, Services, etc.
Model
Presenter
View
14. 14
Technische
Hülle
MVP Grundsätze
Presenter sollte keine Android-
Abhängigkeiten mehr haben.
• Anwendungen haben eine Technische Hülle, aber
einen fachlichen Kern
• Presenter enthält die fachliche Logik, wie sich eine
Maske zu verhalten hat und auf Eingaben reagiert
• View zeigt Daten mit den technischen
Gegebenheiten an
Activities und Fragments
implementieren ein View-Interface,
dass vom Presenter vorgegeben ist.
Der Presenter sollte über wichtige
Ereignisse informiert werden
• Nur wichtige LifeClycle-Events
• Nutzereingaben
Fachlicher
Kern