MVC pret MVC2
Modeļa skata kontrolieris (MVC) ir programmatūras arhitektūra, kas detalizē informācijas plūsmu un to, kā tiek apkalpoti pieprasījumi, lai nodrošinātu precīzu noformējumu. Ražojot Java tīmekļa lietojumprogrammas, divi kopējie dizaina modeļi (1. modelis un 2. modelis) ir cieši saistīti ar MVC, un tos bieži kļūdaini dēvē par MVC1 (vai tikai MVC) un MVC2. Lielākā daļa cilvēku domā, ka MVC2 ir uzlabota MVC versija; patiesībā tā nav. 1. un 2. modelis tika izstrādāti vienlaicīgi, un tie būtībā ir divi varianti, kā lietas būtu jādara.
Galvenā atšķirība starp MVC2 un MVC ir sarežģītība. MVC2 ir sarežģītāk ieviest, liekot daudziem izstrādātājiem doties uz vienkāršāko MVC. Papildu sarežģītības iemesls ir loģikas atdalīšana no prezentācijas. Loģika ir tā daļa, kas apkalpo pieprasījumu un rada lietotājam atbilstošus datus. Prezentācijas aspekts ir veids, kā tas ir jāparāda, kāda valoda jālieto un kas tāds. Tie visi ir sajaukti MVC, savukārt MVC2 pārliecinās, ka tie ir atsevišķi un nodalīti. Galvenā MVC2 pieejas priekšrocība ir elastība. Tā kā loģika un prezentācija ir atdalītas, ir vieglāk izveidot prezentācijas ar citām valodām, neatkārtojot loģikas daļu. Ir arī iespējams pakāpeniski pievienot jaunu loģiku un prezentācijas, neveicot visu lietojumprogrammu.
MVC tiek dots priekšroka mazākās lietojumprogrammās, jo tā vienkāršā pieeja nozīmē, ka ir vieglāk un ātrāk kodēt lietojumprogrammu, neveicot lēkšanu pa stīpām. Ja izstrādājamā lietojumprogramma ir liela vai nākotnē to paredzēts paplašināt, tas ir loģiskāk un tāpēc programmētāji dod priekšroku pāriet uz MVC2. Tā strukturētākā pieeja ļauj vieglāk strādāt pie programmas vēlāk, nezaudējot uzskatu par to, kas notiek, un samazina dublētā koda rašanos.
Ņemot vērā visas novērotās atšķirības, ir skaidrs, ka MVC un MVC2 ir sava niša programmēšanā. Tomēr, ja tiešām vēlaties, jūs varat apmainīties pret otru, taču jums ir jāapsver sekas, it īpaši lielās lietojumprogrammās.
Kopsavilkums:
1.MVC2 nav MVC pēctecis.
2.MVC2 ir sarežģītāks nekā MVC.
3.MVC2 atdala loģiku no prezentācijas, kamēr MVC to nedara.
4.MVC2 ir elastīgāks nekā MVC.
5.MVC2 ir labāks liela mēroga lietojumprogrammu izstrādei nekā MVC.