This article is currently in the process of being translated into Croatian (~99% done).
What is MVC?
MVC, skraćenica za Model-view-controler (Model-pogled-upravljač) je softverski obrazac prvobitno razvijen 1970-ih godina kada su korisnička grafička sučelja bila u ranim fazama razvoja. MVC stremi tome da podijeli aplikaciju na 3 dijela:
Model
Ovo je dio u kojem se nalaze podaci i poslovna logika. U uobičajenoj web aplikaciji, ovaj dio aplikacije bi primjerice predstavljao tablicu u bazi ili bilo koji drugi objekt s kojim bi se vaša aplikacija trebala baviti.
View (Pogled)
"Pogled je stvarni vizualni prikaz vašeg Modela. U tipičnoj web aplikaciji, to bi bila stranica koja prikazuje vaš Model korisniku, bilo da je riječ o obrascu za unos podataka, prikazu podataka ili kombinaciji oboje. Pogled ne mora prikazivati sve dijelove Modela, a Model može imati više od jednog Pogleda.
Controler (Upravljač)
Upravljač bi trebao rukovati svom komunikacijom između vašeg Modela i vašeg Pogleda. U tipičnoj web aplikaciji, metode koje se nalaze na Upravljaču se pozivaju od strane korisnika kada se stranica učita ili kada se pritisne na neko dugme. Upravljač tada, ako je potrebno, ažurira Model i vraća novi Pogled (ili akciju, ali o tome više kasnije), ovisno o potrebi.
Uspon MVC-a
Nakon što je uveden 1970-ih, MVC obrazac nije dobio mnogo pažnje sljedećih 30 godina. Rani web jezici, poput Perla, PHP-a i ASP Classica, nisu se uistinu fokusirali na dizajnerske obrasce, a čak ni s izdavanjem ASP.NET-a, MVC još uvijek nije bio integrirani dio toga. Naravno, mogli ste primijeniti MVC tehnike na svoje projekte, ali nijedan od popularnih okvira to nije poticao na bilo koji način.
Onda je 2004. objavljen Ruby on Rails okvir. Radilo se o okviru za razvoj web aplikacija temeljenom na jeziku Ruby i bio je uvelike nadahnut MVC obrascem. Mnogi su ljudi vjerovali da ovo ponovno stavlja MVC u fokus i nedugo nakon toga pojavili su se mnogi PHP okviri temeljeni na MVC obrascu. Sve je to dovelo do velikog rasta popularnosti MVC obrasca pa je vrlo vjerojatno zbog toga Microsoft odlučio uključiti njegovu implementaciju u svoj .NET okvir, te je dodana i velika podrška u Visual Studio IDE (Integrirano razvojno okruženje). ASP.NET MVC je objavljen 2007., ali prva finalna verzija nije ugledala svjetlo dana prije 2009..
U sljedećim poglavljima ćemo detaljnije istražiti što je ASP.NET MVC i kakav je u usporedbi s alternativama, prvenstveno s ASP.NET WebForms