В мире ASP.NET MVC многие улучшения ASP.NET были включены в сам фреймворк. Основная цель этого шаблона проектирования состоит в том, чтобы изолировать бизнес-логику от пользовательского интерфейса, чтобы сосредоточиться на улучшении удобства сопровождения, улучшенной тестируемости и более четкой структуре приложения.
ASP.NET MVC обладает определенными возможностями, которые делают его лучшим выбором, если вам нужно одно или несколько из следующих:
• Высокий уровень контроля над сгенерированным HTML : в отличие от веб-форм, представления в ASP.NET MVC отображают HTML точно так, как вы им говорите. В последнее время веб-формы были улучшены в этой области, но все еще не имеют уровня контроля, который имеет MVC.
• Более простое модульное тестирование : с ASP.NET MVC очень легко следовать шаблонам тестирования, таким как разработка через тестирование (TDD). Из-за сложного жизненного цикла событий в веб-формах, в дополнение к основанной на элементах управления среде, TDD намного проще с MVC.
• Разделение интересов : это означает, что все аспекты системы четко отделены друг от друга. Из-за шаблона, который он реализует, приложение MVC разделено на дискретные и слабо связанные части (модель, представления и контроллеры), что упрощает обслуживание.
Некоторые из других преимуществ:
• Сам шаблон MVC упрощает управление сложностью, четко разделяя функциональные возможности приложения на три основные части: модель, представление и контроллер.
• Веб-приложения ASP.NET MVC не используют состояние просмотра или формы на основе сервера. Это делает инфраструктуру MVC идеальной для разработчиков, которым нужен полный контроль над поведением приложения. Состояние просмотра может стать очень большим, что является проблемой для таких устройств, как смартфоны, работающие в медленных сетях (передача всей этой информации может быть очень медленной). На странице веб-форм вы можете иметь только одну на страницу. Это довольно серьезное ограничение. В MVC такого ограничения нет, то есть вы можете иметь столько элементов, сколько захотите.
• ASP.NET MVC обеспечивает улучшенную поддержку разработки через тестирование (TDD).
• ASP.NET MVC хорошо работает для веб-приложений, которые поддерживаются большими группами разработчиков, и для веб-дизайнеров, которым необходим высокий уровень контроля над HTML. ASP.NET MVC Обработка запросов