Подтвердить что ты не робот

В чем отличие разработки веб-сайта в MVC и 3-уровневой или N-уровневой архитектуре?

В чем отличие разработки веб-сайта в MVC и 3-уровневой или N-уровневой архитектуре?

Какой из них лучше? Каковы плюсы и минусы?

4b9b3361

Ответ 1

Они почти одинаковы, однако в 3-уровневом, верхний уровень (презентация) никогда напрямую не связывается с нижним уровнем (сохранение данных).

В модели-представлении-контроллере теоретически модель должна "уведомлять" вид, который он изменил, чтобы View мог обновлять. Однако это обычно не проблема в большинстве веб-приложений, поскольку они не имеют гражданства. Я не уверен, что в каких-либо известных PHP MVC-архитектурах есть Views, которые напрямую общаются с моделями или наоборот, но если они этого не делают, было бы правильно сказать, что они фактически являются 3-ярусными.

Википедия говорит:

На первый взгляд три уровня могут похоже на MVC (Model View Контроллер); Однако, топологически они разные. фундаментальное правило в трехуровневом архитектура - это клиентский уровень никогда напрямую связывается с данными уровень; в трехуровневой модели все связь должна проходить через промежуточный уровень. Концептуально трехуровневая архитектура линейна. Однако архитектура MVC треугольник: просмотр отправляет обновления контроллер, обновления контроллера Модель и представление обновляются непосредственно из Модели.

Источник: Википедия: многоуровневая архитектура