Junior — Middle
Vysvětlete princip fungování architektonického vzoru MVVM a jeho složky.
sobes.tech AI
Odpověď od AI
MVVM (Model-View-ViewModel) — architektonický vzor, který rozděluje logiku aplikace do tří komponent:
-
Model — datový model a obchodní logika. Odpovídá za práci s daty, například načítání ze sítě nebo databáze.
-
View — uživatelské rozhraní, které zobrazuje data a přijímá akce uživatele.
-
ViewModel — prostředník mezi Modelem a View. Obsahuje logiku prezentace, převádí data z modelu do formátu vhodného pro zobrazení a zpracovává příkazy uživatele.
Princip fungování:
- View se přihlašuje ke změnám ve ViewModelu (například přes vazby nebo pozorovatele).
- ViewModel požaduje data od Modelu a aktualizuje svůj stav.
- Při změně dat ViewModel upozorní View, která aktualizuje rozhraní.
Toto rozdělení usnadňuje testování a údržbu kódu, protože UI a obchodní logika jsou oddělené.
Příklad v Swift s použitím Combine:
class ViewModel: ObservableObject {
@Published var text: String = ""
func fetchData() {
// načítání dat a aktualizace textu
text = "Data načtena"
}
}
// View se přihlašuje ke změnám ve ViewModelu a automaticky aktualizuje UI