Sobes.tech
Junior

Mis on MVC arhitektuurimuster?

sobes.tech AI

Vastus AI-lt

MVC — on arhitektuurimuster, mis jagab rakenduse kolme seotud ossa:

  1. Mudelis: Halda andmeid ja äriloogikat. Ei tunne vaadet ega kontrollijat. Pakub andmeid kuvamiseks.
  2. Vaade: Vastutab andmete kuvamise eest kasutajale. Saab andmeid mudelilt. Ei sisalda äriloogikat. Ei tunne kontrollijat. Reageerib kasutaja tegevustele ja edastab need kontrollijale.
  3. 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:

  1. Kasutaja suhtleb Vaatega.
  2. Vaade teavitab Kontrolöri tegevusest.
  3. Kontrolör töötleb taotluse, vajadusel tehes koostööd Mudeliga andmete saamiseks või uuendamiseks.
  4. Mudeli teavitab oma jälgijat (tavaliselt Kontrolöri) muudatustest.
  5. Kontrolör valib sobiva Vaate ja edastab sellele andmed Mudelist kuvamiseks.
  6. Vaade kuvab uuendatud andmed kasutajale.

MVC eelised:

  • Vastutusalade jaotamine.
  • Paranenud testitavus.
  • Koodi taaskasutus (eriti Mudeli).
  • Suurte rakenduste arendamise ja hoolduse lihtsustamine.