#asp.net-mvc #asp-classic #.net-3.5 #tags
Вопрос:
Глядя на фреймворк MVC, кажется, что нам требуется больше классических знаний ASP, чем ASP.NET отзывы и состояния просмотра. Движемся ли мы назад к сложной логике пользовательского интерфейса кода в реальной HTML-разметке интерфейса?
Ответ №1:
Мы возвращаемся к тому, чтобы не пытаться абстрагироваться от фундаментальных понятий, таких как HTML и HTTP-запросы. На стороне пользовательского интерфейса это приводит к тому, что представления более тесно интегрируются с выводом, что не так уж плохо. классическая модель ASP привела к тому, что все было тесно интегрировано с выходом, что плохо.
Ответ №2:
Можно было бы утверждать, что парадигма MVC-это шаг назад, если учесть, что ASP.NET парадигма-шаг вперед, я думаю. Лично я всегда думал, что гораздо проще писать чистый разделенный код в классическом ASP, а не .СЕТЬ, в которой выводимый на дисплей текст обычно разбивался на блоки кода, доступ к которым был невозможен с помощью стандартного HTML-редактора. Я всегда думал, что ASP.NET архитектура была больше связана с продвижением .НЕТ, чем улучшение общей структуры нашего приложения, так что в этом смысле MVC-это шаг вперед.
Ответ №3:
Забавно, что вы упомянули об этом … Сегодня у меня был такой же разговор с коллегой.
Является ли это шагом назад? Я так не думаю … в то время как в классическом asp у вас была некоторая сложная логика в пользовательском интерфейсе, из того, что я вижу в MVC, сложная логика все еще должна быть в ваших бизнес-объектах, и любое сложное взаимодействие с объектом должно осуществляться через контроллер.
Цель, опять же, из того, что я вижу, состоит в том, чтобы сохранить пользовательский интерфейс аккуратным и подходящим, когда дело доходит до реальной бизнес-логики. Любое дополнительное раздувание будет вызвано тем, что пользовательский интерфейс станет более удобным для пользователя, с помощью AJAX и jQuery.
Это всего лишь мое первоначальное наблюдение относительно MVC. Это очень крутая технология, особенно с учетом того, как она располагается поверх остальных, что позволяет очень легко работать с другими технологиями.
Я с нетерпением жду возможности попробовать это в нескольких будущих проектах!
Ответ №4:
Если вы видите сложную логику кода в Представлении относительно Моделей и контроллеров, то, возможно, вы подходите к ней неправильно.
В чистом смысле, вы должны иметь возможность переключать представление (скажем, XML вместо HTML) с минимальной работой. Это может произойти только в том случае, если логика данных содержится в моделях, а бизнес-логика содержится в контроллерах.
Таким образом, если бы вы отображали корзину покупок, в представлении мог бы быть только код, который записывает количество и итоговые данные о продукте. Класс(ы) модели будет содержать данные о продукте, а контроллер будет выполнять всю обработку, такую как добавление продуктов и проверка.
Ответ №5:
Весь смысл MVC заключается в разделении кода. Модели должны содержать всю вашу бизнес-логику, представление должно просто обрабатывать вывод для пользователя, а контроллер должен склеить эти две части вместе.