Junior — Middle
Објасните принцип рада архитектонског образца MVVM и његове компоненте.
sobes.tech АИ
Одговор од АИ
MVVM (Model-View-ViewModel) — arhitektonski obrazac koji deli logiku aplikacije na tri komponente:
-
Model — model podataka i poslovna logika. Odgovoran je za rad sa podacima, na primer, učitavanje sa mreže ili baze podataka.
-
View — korisnički interfejs, koji prikazuje podatke i prima akcije korisnika.
-
ViewModel — posrednik između Modela i View-a. Sadrži logiku prikaza, pretvara podatke iz modela u format pogodan za prikaz i obrađuje komande korisnika.
Princip rada:
- View se pretplaćuje na promene u ViewModel-u (na primer, putem veza ili posmatrača).
- ViewModel traži podatke od Modela i ažurira svoje stanje.
- Kada dođe do promene podataka, ViewModel obaveštava View, koji ažurira interfejs.
Ovo razdvajanje olakšava testiranje i održavanje koda, jer su UI i poslovna logika odvojeni.
Primer u Swift-u sa Combine:
class ViewModel: ObservableObject {
@Published var text: String = ""
func fetchData() {
// učitavanje podataka i ažuriranje texta
text = "Podaci učitani"
}
}
// View se pretplaćuje na promene u ViewModel-u i automatski ažurira UI