Android MVVM Architecture
MVVM-Architektur mit Jetpack: ViewModel, LiveData, Data Binding, Separation of Concerns, Unidirectional Data Flow
1Was ist ein ViewModel in Android?
Was ist ein ViewModel in Android?
Antwort
Ein ViewModel ist eine Jetpack-Komponente, die UI-bezogene Daten auf lifecycle-aware Weise speichert und verwaltet. Es überlebt Konfigurationsänderungen (Bildschirmrotation) und ermöglicht die Trennung der Geschäftslogik von der UI.
2Wie erstellt man eine ViewModel-Instanz in einer Activity?
Wie erstellt man eine ViewModel-Instanz in einer Activity?
Antwort
Verwenden Sie ViewModelProvider, um eine ViewModel-Instanz zu erstellen oder abzurufen. ViewModelProvider(this).get(MyViewModel.class) stellt sicher, dass Sie auch nach einer Bildschirmrotation dieselbe Instanz erhalten.
3Warum sollte man niemals einen Activity- oder View-Context in ein ViewModel übergeben?
Warum sollte man niemals einen Activity- oder View-Context in ein ViewModel übergeben?
Antwort
Das ViewModel überlebt Konfigurationsänderungen und lebt länger als Activities. Das Halten einer Activity-Context-Referenz würde zu einem Speicherleck führen. Verwenden Sie AndroidViewModel mit Application Context, falls nötig.
Was ist LiveData?
Was ist der Unterschied zwischen LiveData und MutableLiveData?
+15 Interview-Fragen
Weitere Android-Interviewthemen
Android-Grundlagen
Android UI und Ressourcen
Android-Lebenszyklus
Android-Navigation
Android-Datenverwaltung
Android-Networking
Android Testing
Android Gradle
Kotlin-Sprachgrundlagen für Android
Room Database
Hintergrundarbeit
Jetpack Compose
Berechtigungen und Gerätefunktionen
Firebase für Android
Erweitertes Android Networking
Kotlin Collections und Operatoren
Kotlin Coroutines und Flow
Dependency Injection in Android
Android MVI Architecture
Android Clean Architecture
Android Compose Fortgeschritten
Android Performance and Monitoring
Android Security and Privacy
Android CI/CD and Release
Android UX and Form Factors
Android Testing Advanced
Meistere Android für dein nächstes Interview
Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.
Kostenlos starten