Прежде чем стало известно о среде MVC, мы потратили много времени на разработку собственной платформы .NET MVC моей компании.
Это произошло потому, что мы не хотели ограничиваться ограничениями абстракции WebForms - мы хотели избежать «неуклюжего» ощущения и компромиссов пользовательского интерфейса, которые WebForms, похоже, навязывают всем наиболее сильно настроенным приложениям. Кроме того, нам нужны были дружественные URI, и мы хотели лучше разделить внешнюю и внутреннюю разработку, чем те, которые предлагаются WebForms (мы остановились на архитектуре XML / XSLT).
По моему мнению, на самом деле WebForms предлагают гораздо более скудный метод взаимодействия с пользователем, в частности, из-за использования ViewState, PostBacks и т. Д., Которые абстрагируют реальную механику HTTP от разработчика - это дает им меньше свободы в том, как они позволяют пользователям взаимодействовать с системой. Классическим примером является то, что, поскольку страницы WebForms почти всегда являются результатом POST, если пользователь пытается обновить страницу, он получает неприятное предупреждение из браузера. Для решения этой проблемы в традиционном мире веб-разработки всегда было включение директивы 302 Redirect в HTTP-ответ, поэтому она придерживалась первоначальной парадигмы HTTP GET, предназначенной для извлечения данных, и POST, предназначенной для отправки данных. Существуют и другие подобные проблемы, такие как невозможность иметь две формы на странице (например, форму входа на веб-сайт на другом сервере).
Тем не менее, для RAD WebForms великолепны. В настоящее время я занимаюсь разработкой приложения администратора для веб-приложения, которое мы разработали с использованием нашей пользовательской инфраструктуры MVC, и я пролетаю через, поскольку все, что мне нужно, это отображать содержимое загрузки таблиц базы данных, а в некоторых случаях разрешать пользователю редактировать их различными способами.
Я думаю, что если нам нужно убедить себя в том, что MS продолжит поддерживать WebForms - просто подумайте обо всех бывших разработчиках Windows. Это те люди, для которых изначально были разработаны веб-формы, и они никуда не денутся. Корпоративные разработчики будут вашим спасителем, если вы поклонник WebForms.