MVC1 срещу MVC2
MVC всъщност е дизайнерски модел, отколкото може да бъде категоризиран по-нататък в два модела: MVC Model 1 и MVC Model 2. Съкратено, те са MVC1 и MVC2, които са два модела на Java дизайн..
MVC2 всъщност е по-сложен модел, при който се извършва разделяне на логиката и състоянието на приложението за презентация. Следователно, за разлика от MVC1 архитектурата, Model 2 не идва със странични свойства. Моделът 2 също има един контролер, който отговаря за всички входящи заявки, определя какво следва да се появи и какъв изглед да се покаже. В MVC2 връзките на страниците на JSP за следващата фаза или изглед също ще преминат през контролера за разлика от MVC1, където JSP страницата води директно към JSP страница.
Така че основно MVC1 се състои най-вече от контролни елементи, използващи JSP, докато MVC2 използва JSP и Servlet, за които се смята, че са по-добри от модел 1 в предоставянето на потребителски интерфейс. MVC1 също използва Java зърна за извличане на данни.
Разликата в системите на двата модела става очевидна в това как страниците се обработват и разглеждат. За да обясним по-нататък, MVC1 започва с искането да бъде прието от JSP, който работи заедно с Bean, двете комбинирани обработват логиката, за да генерират резултати. Работата е разделена между двете, тъй като Beans поемат ролята на Модела, докато JSP е не само „Контролерът“, но и „View“. Този тип директен достъп между страниците прави модела MVC1 идеален за по-малки приложения.
От друга страна, MVC2 обикновено се използва за по-големи или интерактивни приложения поради своята „централизация“. За разлика от MVC1, където текущата страница на дисплея е тази, която определя следващата страница да се отвори, MVC2 архитектурата използва контролера между браузъра и сървъла или JSP страниците. Както бе споменато, контролерът действа като основен „проход”, през който преминават заявките, за да се проправи път за следващия изглед. Модел 2 основно разделя тези JSP страници и сървлета една от друга, докато Model 1 поддържа двете свързани. Следователно MVC2 е по-лесен за манипулиране за много потребители и е в състояние да поддържа по-сложна система.
В момента обаче много малко приложения използват MVC1 като своя архитектурен дизайн. Тъй като исканията за уеб сърфиране са станали по-високи, норма е да се използва MVC2 във всяка програма, която се прави. Разбира се, фактът, че MVC1 е безкрайно прост, означава, че той продължава да бъде любим за целите на изследването. Въпреки това практическите приложения вече не се практикуват толкова често, колкото MVC2.
Едно от често срещаните погрешни схващания днес обаче включва използването на MVC1 и MVC2. Повечето хора вярват, че MVC2 всъщност е нова версия на MVC, но факт е, че това е подкатегория или друг начин за приближаване до процеса, откъдето идва и името Model 2. По тази причина фразата MVC1 е създадена, за да създаде разлика между двата модела.
В идеалния случай тези, които искат да овладеят софтуерна архитектура, трябва да изберат да изучават и двата аспекта на MVC, а не само MVC2. Това би осигурило по-добро разбиране на цялата система, като се има предвид, че MVC1 е въведен за първи път.
Резюме:
1.MVC2 използва системен контролер, докато MVC1 не.
2. Процесът MVC1 преминава от една страница на друга JSP, докато MVC2 насочва към общ панел, преди да се насочи към друга страница.
3. MVC1 рядко се използва днес и е предимно добър за прости, самостоятелни програми.
4.MVC2 е най-разпространеният архитектурен модел, който се използва днес и е най-подходящ за по-сложни системи.