Junior — Middle
Wyjaśnij zasadę działania wzorca architektonicznego MVVM i jego składniki.
sobes.tech AI
Odpowiedź od AI
MVVM (Model-View-ViewModel) — wzorzec architektoniczny, który dzieli logikę aplikacji na trzy komponenty:
-
Model — model danych i logika biznesowa. Odpowiada za pracę z danymi, na przykład ładowanie z sieci lub bazy danych.
-
View — interfejs użytkownika, wyświetlający dane i przyjmujący działania użytkownika.
-
ViewModel — pośrednik między Model a View. Zawiera logikę prezentacji, przekształca dane z modelu w format odpowiedni do wyświetlenia i obsługuje polecenia użytkownika.
Zasada działania:
- View subskrybuje zmiany w ViewModel (np. przez wiązania lub obserwatory).
- ViewModel pobiera dane z Model i aktualizuje swój stan.
- Przy zmianie danych, ViewModel powiadamia View, które odświeża interfejs.
Ta separacja ułatwia testowanie i utrzymanie kodu, ponieważ UI i logika biznesowa są oddzielone.
Przykład w Swift z użyciem Combine:
class ViewModel: ObservableObject {
@Published var text: String = ""
func fetchData() {
// ładowanie danych i aktualizacja text
text = "Dane załadowane"
}
}
// View subskrybuje zmiany w ViewModel i automatycznie odświeża UI