Skratka MVC znamená “Model-View-Controller”, čo je architektonický návrhový vzor používaný pri vývoji softvéru, najmä webových aplikácií. Umožňuje rozdelenie aplikácie na tri prepojené, ale samostatné komponenty: Model, View a Controller.
Komponenty MVC:
1.Model (Model):
•Zodpovedá za správu dát, logiky a pravidiel aplikácie.
•Poskytuje dáta View alebo prijíma príkazy na ich aktualizáciu od Controller.
Príklad:
•V aplikácii pre správu používateľov by Model zahŕňal triedu User, ktorá spravuje údaje ako meno, e-mail a heslo.
2.View (Pohľad):
•Zodpovedá za zobrazovanie dát používateľovi a za interakciu s používateľom.
•Zobrazuje dáta získané z Model vo forme, ktorá je zrozumiteľná.
Príklad:
•HTML stránka alebo UI komponent, ktorý zobrazí zoznam používateľov.
3.Controller (Ovládač):
•Slúži ako sprostredkovateľ medzi Model a View.
•Prijíma vstupy od používateľa (napr. cez formuláre), spracováva ich a upravuje dáta v Model, ktoré následne aktualizujú View.
Príklad:
•Metóda addUser() v ovládači spracuje dáta z formulára a uloží nového používateľa cez Model.
Príklad toku dát v MVC:
1.Používateľ klikne na tlačidlo „Pridať používateľa“.
2.Controller spracuje požiadavku a zavolá metódu v Model, ktorá uloží nové dáta do databázy.
3.Model vráti aktualizované dáta.
4.Controller pošle aktualizované dáta do View, ktoré ich zobrazí používateľovi.
Výhody MVC:
1.Oddelenie zodpovedností:
•Každá časť aplikácie má jasne definovanú úlohu, čo uľahčuje údržbu a rozšírenie.
2.Opätovná použiteľnosť:
•Rovnaký Model môže byť použitý s rôznymi pohľadmi (napr. webová a mobilná verzia).
3.Lepšia testovateľnosť:
•Komponenty môžu byť testované nezávisle.
Použitie MVC v praxi:
•Webové frameworky:
•Ruby on Rails (Ruby), Django (Python), ASP.NET MVC (C#).
•Frontend frameworks:
•Angular a React používajú podobné princípy na oddelenie logiky a zobrazenia.
MVC je kľúčový návrhový vzor, ktorý pomáha organizovať kód a zvyšuje efektivitu pri vývoji softvéru.