MVC proti MVC2
Krmilnik pogleda modela (MVC) je programska arhitektura, ki podrobno določa tok informacij in kako se zahteve servisirajo za zagotavljanje natančne predstavitve. Pri izdelavi spletnih aplikacij Java sta dva običajna modela oblikovanja (Model 1 in Model 2) tesno povezana z MVC in se pogosto napačno imenujeta MVC1 (ali samo MVC) in MVC2. Večina ljudi meni, da je MVC2 izboljšana različica MVC; pravzaprav ni. Model 1 in Model 2 sta bila razvita sočasno in sta v bistvu dve različici, kako je treba delati.
Glavna razlika med MVC2 in MVC je kompleksnost. MVC2 je bolj zapleten za izvajanje, zaradi česar se veliko razvijalcev loti enostavnejšega MVC. Razlog za dodatno kompleksnost je ločitev logike od predstavitve. Logika je tisti del, ki servisira zahtevo in ustvari ustrezne podatke za uporabnika. Predstavitveni vidik je, kako naj bo prikazan, kateri jezik naj se uporablja in podobno. Vsi so v MVC pomešani, medtem ko MVC2 poskrbi, da so ločeni in razdeljeni. Glavna prednost pristopa MVC2 je fleksibilnost. Ker sta logika in predstavitev ločeni, je lažje ustvariti predstavitve z drugimi jeziki, ne da bi morali ponoviti logični del. Možno je tudi postopno dodajati novo logiko in predstavitve, ne da bi se morali ukvarjati s celoto aplikacije.
MVC je najprimernejši v manjših aplikacijah, saj njegov preprost pristop pomeni, da je program lažje in hitreje kodirati, ne da bi morali skočiti skozi obroče. Če je aplikacija, ki jo je treba razviti, velika ali se pričakuje, da se bo v prihodnosti razširila, je bolj logično in zato programerji raje uporabljajo MVC2. Njen bolj strukturiran pristop olajša delo v programu pozneje, ne da bi izgubili sled, kaj gre kam, in zmanjša pojav podvojene kode.
Glede na odpravljene razlike je jasno videti, da imata MVC in MVC2 svojo nišo v programiranju. Kljub temu lahko zamenjate eno za drugo, če res želite, vendar razmislite o posledicah, zlasti pri velikih aplikacijah.
Povzetek:
1.MVC2 ni naslednik MVC.
2.MVC2 je bolj zapleten kot MVC.
3.MVC2 loči logiko od predstavitve, medtem ko MVC ne.
4.MVC2 je bolj prilagodljiv kot MVC.
5.MVC2 je boljši za razvoj velikih programov kot MVC.