MVC, sau controlerul de vizualizare a modelului, este o tehnică utilizată în software. Scopul său fundamental este de a construi o distincție între modul în care software-ul gestionează datele și modul în care software-ul interacționează cu utilizatorul. Această distincție înseamnă că procesele pot fi gestionate, dezvoltate și verificate separat, ceea ce poate fi mai eficient.
Procesul se bazează pe conceptul că, la cel mai simplu nivel, toate programele îndeplinesc aceeași funcție în trei pași. Mai întâi un utilizator introduce date, apoi software-ul procesează datele și, în final, software-ul scoate rezultatele ca un nou set de date. Un exemplu de bază în acest sens este un utilizator care tastează „2+2=” într-un calculator, calculatorul calculează răspunsul, iar apoi calculatorul afișează „4”.
În sistemul MVC, modul în care computerul prelucrează datele este cunoscut sub numele de model. Ieșirea rezultatelor este cunoscută sub denumirea de vedere. Introducerea datelor de către utilizator este cunoscută sub numele de controlor. Este important să ne amintim că vizualizarea și controlerul sunt secțiunile programului care controlează intrarea și ieșirea. Termenii nu se referă de obicei la obiecte fizice, cum ar fi o tastatură sau un monitor.
Scopul utilizării MVC este de a simplifica izolarea diferitelor elemente ale unui proces software. Prin utilizarea sistemului, un program este efectiv împărțit în trei părți: procesarea datelor, procesul de intrare și procesul de ieșire. Aceasta înseamnă că modificările unei părți a programului pot fi făcute mai ușor, fără a fi nevoie să rescrie și celelalte părți ale programului.
Sistemul de controler de vizualizare a modelului este considerat pe scară largă ca fiind pionier într-un limbaj de programare intitulat Smalltalk. Creat în anii 1970 la Xerox, Smalltalk a fost conceput parțial pentru a-i învăța pe oameni despre modelul obiect al computerului. Mai simplu, asta implică împărțirea unei sarcini de calcul în părți separate și construirea programului în jurul modului în care acele părți interacționează. Smalltalk a fost, de asemenea, un exemplu de programare dinamică, în care un program poate fi revizuit chiar și în timp ce funcționează.
Sistemul MVC este adesea folosit în software-ul bazat pe web, cum ar fi cel utilizat în site-urile web dinamice sau interactive. În aceste situații, vizualizarea este codul, cum ar fi HTML, care este generat de software după procesarea unei interogări. De exemplu, pe un motor de căutare, caseta de căutare ar fi controlerul, iar pagina de rezultate ar fi vizualizarea.