Junior — Middle
Selgitage arhitektuurimustri MVVM tööpõhimõtet ja selle komponendid.
sobes.tech AI
Vastus AI-lt
MVVM (Model-View-ViewModel) — arhitektuurimuster, mis jagab rakenduse loogika kolme komponendisse:
-
Model — andmemudel ja äriloogika. Vastutab andmetega töötamise eest, näiteks andmete laadimise eest võrgust või andmebaasist.
-
View — kasutajaliides, mis kuvab andmeid ja võtab kasutaja tegevusi vastu.
-
ViewModel — vahendaja Modeli ja View vahel. Sisaldab esitlusloogikat, teisendab mudelist saadud andmed sobivasse vormingusse ning töötleb kasutaja käske.
Tööpõhimõte:
- View tellib end ViewModeli muudatustest (näiteks sidumiste või jälgijate kaudu).
- ViewModel küsib andmeid Modelilt ja uuendab oma olekut.
- Kui andmed muutuvad, teavitab ViewModel View-d, mis uuendab kasutajaliidest.
See jaotus lihtsustab koodi testimist ja hooldust, kuna kasutajaliides ja äriloogika on eraldatud.
Näide Swiftis Combine'i kasutades:
class ViewModel: ObservableObject {
@Published var text: String = ""
func fetchData() {
// andmete laadimine ja teksti uuendamine
text = "Andmed laaditud"
}
}
// View tellib end ViewModeli muudatustest ja uuendab automaatselt kasutajaliidest