Junior
Mis on MVC arhitektuurimuster?
sobes.tech AI
Vastus AI-lt
MVC — on arhitektuurimuster, mis jagab rakenduse kolme seotud ossa:
- Mudelis: Halda andmeid ja äriloogikat. Ei tunne vaadet ega kontrollijat. Pakub andmeid kuvamiseks.
- Vaade: Vastutab andmete kuvamise eest kasutajale. Saab andmeid mudelilt. Ei sisalda äriloogikat. Ei tunne kontrollijat. Reageerib kasutaja tegevustele ja edastab need kontrollijale.
- Kontrolör: Tegutseb vahendajana mudeli ja vaate vahel. Töötleb kasutaja sisendit vaate kaudu, uuendab mudelit ja valib sobiva vaate muudetud mudeli kuvamiseks.
Koostoime toimub järgmiselt:
- Kasutaja suhtleb Vaatega.
- Vaade teavitab Kontrolöri tegevusest.
- Kontrolör töötleb taotluse, vajadusel tehes koostööd Mudeliga andmete saamiseks või uuendamiseks.
- Mudeli teavitab oma jälgijat (tavaliselt Kontrolöri) muudatustest.
- Kontrolör valib sobiva Vaate ja edastab sellele andmed Mudelist kuvamiseks.
- Vaade kuvab uuendatud andmed kasutajale.
MVC eelised:
- Vastutusalade jaotamine.
- Paranenud testitavus.
- Koodi taaskasutus (eriti Mudeli).
- Suurte rakenduste arendamise ja hoolduse lihtsustamine.