MVC для меня? - PullRequest
       28

MVC для меня?

4 голосов
/ 12 мая 2009

В настоящее время я изучаю «традиционный» ASP.NET, но вокруг ASP.NET MVC много шума. Должен ли я сейчас попасть в MVC или сначала получить хорошее представление о традиционных веб-формах?

Ответы [ 10 ]

15 голосов
/ 12 мая 2009

Получить в MVC. Сейчас. И никогда не оглядывайся назад.

5 голосов
/ 12 мая 2009

Если вы еще не изучили веб-формы ASP.NET, вам нужно спросить себя, действительно ли вы хотите узнать о веб-разработке.

ASP.NET MVC предоставляет вам радость / боль / красоту / уродство HTML, Javascript и CSS. ASP.NET Webforms пытается максимально скрыть вас от всего этого.

Лично я предпочел бы знать все, что происходит в моих приложениях, даже если это иногда означает больше работы, что заставляет меня предпочитать ASP.NET MVC.

3 голосов
/ 19 июля 2010

Запустив веб-формы asp.net и перейдя на asp.net mvc, я могу с уверенностью сказать, что я предпочитаю asp.net mvc. Некоторые люди предпочитают веб-формы, в то время как другие предпочитают mvc. Webforms существует уже давно и имеет очень богатое сообщество, и есть бесчисленное множество пользовательских элементов управления, которые вы можете скачать и купить.

Webforms чувствуют себя очень знакомыми разработчикам Winforms и всем, кто имел какой-либо опыт в программировании на основе событий. Webforms по моему мнению, однако, довольно тяжеловес. Он затягивает ваши глаза, чтобы вы получили опыт кодирования страниц asp.net, который выглядит несколько как создание приложения для Windows. Перетащите элементы управления на страницу (или напишите разметку самостоятельно) и зарегистрируйте обработчики событий для OnClick и т. Д., А также источники данных для привязки и т. Д.

Чтобы получить хорошее представление о веб-формах, вам необходимо хорошо понимать жизненный цикл страницы asp.net и все происходящие события. Это имеет первостепенное значение для обеспечения привязки ваших элементов управления на правильной стадии жизненного цикла страницы, правильного восстановления состояния просмотра и т. Д. Это кривая изучения веб-форм.

Как утверждают другие, MVC требует большего знания html, javascript / JQuery, CSS и общего понимания парадигмы модели, представления, контроллера.

Пока asp.net webforms 4 Я верю? на дорогах при создании немного более чистого HTML, у вас все еще есть проблема со сложными страницами раздутого представления, уродливого HTML и т. д.

Что приятно, так это использование фреймворка, такого как ASP.NET MVC, но затем использование некоторых элементов управления веб-формами, таких как диаграммы, сервер отчетов. Однако вместо того, чтобы размещать их прямо в вашем представлении, как на странице в asp.net mvc, лучше абстрагировать компоненты веб-форм от MVC и заставить их возвращать изображение, FileContentResult или что-то подобное.

2 голосов
/ 12 мая 2009

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

2 голосов
/ 12 мая 2009

Если вы только начинаете работать с WebForms и думаете о создании MVC, я бы просто сделал скачок. Изучение WebForms на данный момент не очень поможет вам и может сбить вас с толку в отношении MVC. Это совершенно другая модель разработки, хотя она использует ту же платформу.

2 голосов
/ 12 мая 2009

Я бы сказал, погрузиться головой в ASP.NET MVC. Вам не нужно изучать детали WebForms, чтобы понять это, и вы избежите развития многих, возможно, вредных привычек. MVC гораздо лучше поощряет более чистое кодирование и выделяет болевые точки в ваших приложениях.

2 голосов
/ 12 мая 2009

Это довольно хорошая статья, которая может помочь вам решить: http://weblogs.asp.net/shijuvarghese/archive/2008/07/09/asp-net-mvc-vs-asp-net-web-form.aspx

Действительно, это зависит от того, что вы хотите сделать, хотя MVC выглядит так, как будто это будет путь вперед.

1 голос
/ 12 мая 2009

Я бы рекомендовал начать с MVC. Webforms, возможно, является хакерской попыткой сделать сеть программируемой, используя ту же модель событий, что и winforms. Вероятно, вы потратите значительное количество времени на попытки взломать этот хак. MVC извлекает выгоду из четкого разделения проблем, его гораздо проще тестировать и он поощряет лучшую архитектуру.

Что вы потеряете (по крайней мере, на данный момент) - это возможность «перетаскивать» огромный массив коммерческих компонентов asp.net и ярлыки дизайнера, которые Visual Studio может предоставить вам. Поскольку это так ново, вы также можете ограничивать свои перспективы работы (хотя вы, вероятно, получите лучшее понимание того, как работает сеть).

Но, если говорить так, я был на MVC около года, и идея возвращения к веб-формам заставляет меня задыхаться.

1 голос
/ 12 мая 2009

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

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

0 голосов
/ 18 июня 2013

Определенно, MVC является потрясающим в том смысле, что можно быть в мире разработки программного обеспечения.

  1. Когда вы делаете вещи в MVC, вы знакомитесь с паттерном MVC и большинством веб-инструментов MVC Framework, таких как asp.net mvc, Zend Framework и так далее, даже для создания или настройки своего собственного ..

  2. В Mvc очень забавно, что сложность кода сокращается, потому что вам нужно иметь только модель на вашем представлении, например index.aspx - вам нужен класс модели отчета или reportviewmodel, которые повышают производительность, читаемость и производительность даже .

  3. MVC в asp.net имеет классные плагины, такие как твиттер Twitter, DI-контейнер, UNIT TESTING - этот инструмент очень полезен и имеет множество передовых инструментов для игры.

  4. Вы видели эту ссылку! - пожалуйста, прочитайте

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...