MVC против MVC2: разница и сравнение

Если есть какая-либо проблема в разработке программного обеспечения, то его шаблон проектирования является основным решением для ее устранения. Они похожи на заранее определенные чертежи, которые мы используем для решения задач объектно-ориентированного проектирования в вашем проекте.

Сначала он выясняет, в чем проблема, а затем устраняет ее, а также описывает процедуру и ее последствия. MVC и MVC2 — это два разных подхода к известному архитектурному шаблону MVC (Model View Controller).

Основные выводы

  1. MVC разделяет логику приложения на модель, представление и контроллер, тогда как MVC2 усиливает это разделение с помощью двух типов контроллеров: приложения и представления.
  2. MVC использует один контроллер для обработки пользовательского ввода, в то время как контроллер приложений MVC2 управляет общими функциями, а контроллер представления обрабатывает задачи, специфичные для представления.
  3. MVC2 улучшает повторное использование и удобство сопровождения за счет уменьшения зависимостей между компонентами по сравнению с MVC.

MVC против MVC2

MVC — это шаблон проектирования программного обеспечения, который разделяет приложение на три взаимосвязанных компонента: модель, представление и контроллер. MVC широко используется в веб-разработке. MVC2, также известный как «Модель 2», представляет собой вариант шаблона MVC, который разделяет контроллер на две отдельные части: фронт-контроллер и диспетчер. Этот шаблон обычно используется в средах веб-разработки.

MVC против MVC2

MVC был подходом первого поколения в веб-приложениях Java, где для пользовательского интерфейса использовались страницы JavaServer Page (JSP) вместе с JavaBeans, которые могли инкапсулировать несколько объектов в один объект для реализации архитектуры MVC.

Пользовательские запросы из браузера отправляются в JSP, который содержит логику контроллера и связывает модель с данными, которые обновляют представление и отправляют ответ обратно пользователю, который отображается в пользовательском интерфейсе.

Этот подход сочетает в себе функции контроллера и представления на странице JSP и, следовательно, нарушает парадигму MVC. 

MVC2 был представлен корпорацией Sun Microsystem как шаблон проектирования, который не нарушает парадигму MVC, в отличие от MVC, где бизнес-логика была отделена от представлений, а все клиентские запросы обрабатывались в одном месте, а не в каждом файле JSP в MVC.

Читайте также:  Гистограмма против гистограммы: разница и сравнение

В шаблоне MVC2 JSP заменен сервлетами для логики контроллера.

Сравнительная таблица

Параметр сравненияMVCМВК2
ОпределениеВ MVC за получение запросов и отправку ответов отвечает один компонент.В MVC2 есть несколько компонентов для получения запросов и отправки ответов. т.е. контроллер и вид.
НавигацияВ MVC каждый JSP имеет контроллер и логику представления, которые определяют навигацию по следующей странице представления, что делает ее перераспределяемой.В MVC2 сервлет содержит логику навигации по следующей странице просмотра, что делает ее централизованной.
КропотливыйТребуется больше времени, чтобы написать код для разработки пользовательских тегов JSP, чтобы избежать тега scriptlet.Разработка занимает меньше времени, так как все управление навигацией централизовано.
индепендентство Бизнес-логика и логика представления объединены в JSP, поэтому веб-дизайнеры и веб-разработчики не могут работать одновременно.Поскольку в нем есть разделение между логикой и представлением, дизайнер и разработчик могут работать вместе.
Повторное удобство и простота использованияЕго сложнее повторно использовать и расширять из-за тесной связи между логикой и представлением.Его легко повторно использовать и расширять, что подходит для более крупных приложений.
Закрепите это сейчас, чтобы вспомнить позже
Закрепить

Что такое MVC?

MVC — это шаблон архитектурного проектирования для повторяющихся проблем разработки программного обеспечения, который дает высокоуровневый подход к решению. Архитектура MVC состоит из трех модулей: модель, представление и контроллер.

Модель: Он представляет состояние данных (которые отображаются пользователю на странице просмотра).

Посмотреть: Модуль просмотра — это пользовательский интерфейс, через который пользователь выполняет действие и внутренне взаимодействует с сервером.

контроллер: Модуль контроллера обрабатывает запрос пользователя и бизнес-логику и с помощью модели манипулирует данными, которые отображаются в пользовательском интерфейсе.

MVC начинается с того, что JSP принимает запрос клиента, который работает вместе с JavaBeans для логики обработки данных, которые отправляются клиенту.

Работа разделена между JavaBeans и JSP, где JSP вызывает JavaBeans и бизнес-логику, при этом JavaBeans внутренне вызывает базу данных для сохранения/получения данных. В конце концов, JSP отправляет ответ клиенту, который обновляет представление в браузере.

JavaBeans, которые также называются Beans, отвечают за инкапсуляцию нескольких объектов в один объект, в то время как JSP имеет как логику контроллера, так и логику представления.

Читайте также:  McAfee против антивируса Norton: разница и сравнение

MVC также называют ориентированным на страницы из-за его прямого доступа к другой странице представления, что идеально подходит для небольших приложений.

Что такое МВК2?

Большинство инженеров-программистов считают, что MVC2 — это улучшенная версия MVC, как и версия 2.0; это не так. Модель 1 и Модель 2 разрабатывались одновременно и представляют собой два варианта того, как все должно быть сделано.

MVC2 — это более сложный шаблон, в котором выполняется разделение состояния приложения и логики управления презентацией.

Он имеет контроллер, в котором написана логика для обработки всех входящих запросов и требуемых действий, которые необходимо предпринять, например, переход на другую страницу просмотра или обновление состояния модели.

Здесь, в MVC2, сервлет действует как уровень контроллера, который также является интерфейсом между уровнем представления и уровнем модели, где он получает запрос от клиента или пользовательского интерфейса, который представляет собой не что иное, как уровень представления, и обрабатывает их с соответствующей проверкой. если необходимо.

JSP имеет логику представления, которая внутренне использует Beans, поэтому, если сервлеты обновляют состояние модели, это отражается на странице представления.

В отличие от MVC, JSP в MVC2 не имеет ни контроллеров, ни логики представления; его единственная ответственность состоит в том, чтобы получить обновленное состояние модели из этого сервлета для отображения на странице представления. 

Основные различия между MVC и MVC2

Мы путаем MVC2 с версией MVC 2.0, однако это не так, это модели проектирования Java, в которых архитектура MVC2 более сложна и лучше всего подходит для более крупных приложений.

Отличительный фактор между MVC и отношения MVC2 можно резюмировать по следующим основаниям:

  1. В MVC за получение запросов и отправку ответов отвечает один компонент, а в MVC2 за получение запросов и отправку ответов отвечает несколько компонентов. т.е. контроллер и вид.
  2. MVC1 тесно связывает логику представления с бизнес-логикой, но MVC 2 изолирует или отделяет логику представления от бизнес-логики.
  3. В MVC бизнес-логика и логика представления объединены в JSP, поэтому веб-дизайнеры и веб-разработчики не могут работать одновременно, но в MVC2 существует разделение между логикой и представлением, поэтому дизайнер и разработчик могут работать вместе.
  4. В MVC 1 и контроллер, и модель представляют собой JSP, или можно сказать, что они написаны на одном и том же JSP. Но в MVC2 контроллер — это сервлет, а модель — класс Java.
  5. MVC не поддерживает повторное использование компонентов приложения, тогда как MVC2 поддерживает повторное использование компонентов, что хорошо для более крупных и сложных приложений.

Рекомендации

  1. https://www.scientific.net/AMM.198-199.537
  2. https://ieeexplore.ieee.org/abstract/document/777091/
  3. https://academic.oup.com/jpp/article-abstract/64/3/397/6135294

Один запрос?

Я приложил столько усилий, чтобы написать этот пост в блоге, чтобы предоставить вам ценность. Это будет очень полезно для меня, если вы подумаете о том, чтобы поделиться им в социальных сетях или со своими друзьями/родными. ДЕЛИТЬСЯ ♥️

Хотите сохранить эту статью на потом? Нажмите на сердечко в правом нижнем углу, чтобы сохранить в свой собственный блок статей!

Об авторе

Чара Ядав имеет степень магистра делового администрирования в области финансов. Ее цель — упростить темы, связанные с финансами. Она работает в сфере финансов около 25 лет. Она провела несколько курсов по финансам и банковскому делу для бизнес-школ и сообществ. Подробнее у нее био страница.