Výhody MVC Většina webových aplikací vyvinutých v procedurálních jazycích jako ASP a PHP má počáteční vývojovou šablonu pro datové programování v hybridní vrstvě. Například odeslání požadavku přímo do databáze a zobrazení v HTML bývá rychlé, ale protože oddělení datových stránek není příliš přímé, je obtížné odrážet vzhled obchodního modelu nebo znovupoužitelnost modelu. Flexibilita návrhu produktu je velmi malá a je obtížné vyhovět měnícím se potřebám uživatelů. MVC vyžaduje vrstvení aplikací, i když to vyžaduje více práce, ale struktura produktu je jasná a aplikace produktu se lépe odráží v modelu. Především by mělo existovat více pohledů odpovídajících schopnostem modelu. S rychlými změnami potřeb uživatelů může existovat více způsobů, jak přistupovat k vaší aplikaci. Například model objednávek může mít objednávky z tohoto systému, online objednávky nebo objednávky z jiných systémů, ale zpracování objednávek je stejné, což znamená, že zpracování objednávek je stejné. Podle návrhového vzoru MVC může problém vyřešit jeden pořadový model a více pohledů. To snižuje kopírování kódu, tj. snižuje množství údržby kódu, a je snadné ho udržovat po změně modelu. Za druhé, protože data vrácená modely nemají žádný zobrazovací formát, lze tyto modely také přímo aplikovat na rozhraní rozhraní. Za třetí, protože aplikace je rozdělena do tří vrstev, někdy změna jedné z vrstev uspokojí změnu aplikace. Změna obchodního procesu nebo obchodních pravidel aplikace vyžaduje pouze změnu vrstvy modelu MVC. Koncept řídicí vrstvy je také platný, protože kombinuje různé modely a různé pohledy k dokončení různých požadavků, takže řídicí vrstva může obsahovat koncept oprávnění uživatelských požadavků. Nakonec také usnadňuje řízení softwarového inženýrství. Protože různé vrstvy plní své vlastní úkoly, každá vrstva různých aplikací má některé stejné vlastnosti, což je vhodné pro generování hypervizorového kódu prostřednictvím inženýrství a nástrojů. Nedostatky MVC Nedostatky MVC se odrážejí v následujících aspektech: (1) zvyšuje složitost struktury a implementace systému. U jednoduchých rozhraní by přísné dodržování MVC pro oddělené modely, pohledy a řadiče zvýšilo složitost struktury a mohlo by způsobit příliš mnoho aktualizačních operací, což by snížilo provozní efektivitu. (2) view a ovladač příliš těsné spojení. Pohledy a ovladače jsou samostatné, ale úzce související části, a použití pohledů bez ovladačů je omezené, a naopak, což zabraňuje jejich nezávislému opětovnému použití. (3) zobrazit neefektivní přístup k datům modelu. V závislosti na rozhraní modelu může být nutné zobrazení volat opakovaně, aby se získala dostatečná zobrazovací data. Zbytečně častý přístup k nezměněným datům může také poškodit provozní výkonnost. (4V současnosti architektura MVC není podporována pokročilými rozhraními ani konstruktory. Náklady na přizpůsobení těchto nástrojů potřebám MVC a zavedení oddělených částí jsou vysoké, což ztěžuje použití MVC.
|