Чем не годится ASP.NET MVC? - PullRequest
       1

Чем не годится ASP.NET MVC?

7 голосов
/ 04 августа 2009

Я большой поклонник того, что делает ASP.NET MVC на многих уровнях.

Я собираюсь принять участие в перестройке веб-сайта с очень высокой посещаемостью, и я не знаю, какая структура будет лучше (если есть).

Для сайта потребуется следующее:

  • Для поддержки Javascript-страниц с высокой степенью интерактивности
  • Но в то же время предоставьте базовый семантический HTML для поисковых систем
  • Поддержка нескольких языков
  • Будь скином
  • Предоставление RESTful API веб-сервиса для партнеров

Насколько я могу судить, нет причин не использовать ASP.NET MVC для этого.

  • Я могу представить семантический HTML и Javascript слоя поверх, используя jQuery.
  • Можно использовать несколько языков для использования файлов ресурсов (так же, как в настоящее время).
  • Скинирование может быть сделано с помощью CSS (это не повлечет за собой изменений в разметке).
  • Я могу централизовать бизнес-логику, чтобы контроллеры и веб-сервис WCF использовали один и тот же код.

Но есть ли потенциальные недостатки использования MVC, которые я не рассматривал?

Я не хочу быть тем парнем, который выбирает технологию, потому что она крутая, но потом обнаруживает, что она не очень подходит для работы.

Ответы [ 5 ]

11 голосов
/ 04 августа 2009

ASP.NET MVC не годится, когда все, что вы делаете, - это создание веб-сайта, который нуждается в серверном коде (но это также верно и для ASP.NET)

В вашем случае, я думаю, MVC был бы отличным способом. MVC хорошо зарекомендовал себя на сайтах с высоким трафиком (например, этот). Однако вы должны помнить, что MVC является новым и изменяющимся. Библиотека может не существовать для выполнения определенной задачи, а это значит, что вам придется писать этот код самостоятельно.

Удачи в восстановлении!

6 голосов
/ 04 августа 2009

Вы можете пойти с MVC, учитывая то, что вы сказали о своем проекте.

Насколько мне известно, ASP.NET MVC действительно НЕ подходит для ситуаций, когда у вас есть большая кодовая база в WebForms (то есть у вас много пользовательских элементов управления ASP.NET, пользовательских элементов управления и т. Д.). Также нехорошо, если над вами будут работать люди, которые не знают, что это такое. Помимо этого, это довольно хорошая технология.

3 голосов
/ 04 августа 2009

Мои два цента:

ASP.NET MVC - отличный вариант, но при этом требуется небольшая кривая обучения, поэтому убедитесь, что ваш план проекта / временная шкала справились с этим. В вашей команде могут быть разработчики, которым неудобно работать с ASP.NET MVC, и это может привести к возможным задержкам (многие разработчики все еще работают в ASP.NET 1.1!).

@ Алекс: Отсутствие контроля. Некоторые функции (например, TreeView или Menu) уже реализованы в виде элементов управления, и было бы бесполезно тратить время на их реализацию с помощью mvc.

IMO идея использования элементов управления в ASP.NET MVC не имеет большого смысла. Вы можете легко создать элемент управления в виде дерева, используя jQuery. Классические серверные элементы управления ASP.NET несли много багажа (viewstate и т. Д.), И, следовательно, ASP.NET MVC не использовал ни один из этих элементов управления (хотя вы можете использовать помощников).

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

0 голосов
/ 10 февраля 2012

Существуют лучшие способы реализации MVC без использования asp.net MVC. Я делал это в прошлом, еще до того, как появился asp.net MVC. MVC - это шаблон, а не технология, я не понимаю, почему некоторые люди называют это технологией. Вы можете отделить все проблемы, удалив выделенный код из веб-форм и создав свои собственные контроллеры и маршрутизаторы, и вы по-прежнему будете иметь преимущество элементов управления веб-формы и т. Д., К которым привыкло большинство разработчиков asp.net. asp.net mvc хорош для людей, у которых на самом деле нет времени для правильного создания приложения MVC в среде веб-форм, а также для тех, у кого нет времени для разработки лучшего решения. В заключение, asp.net mvc хорош, но есть гораздо лучший способ сделать это, и, наконец, MVC НЕ является технологией.

0 голосов
/ 04 августа 2009

Мне не нравится ASP.NET MVC по следующим причинам:

1. Уродливый API маршрутизации, там http://ayende.com/Blog/archive/2008/11/05/a-case-study-of-bad-api-design-asp.net-mvc-routing.aspx это описание того, что не так. Кстати, дружественные ссылки могут быть легко реализованы без MVC http://demo.liveui.net/bugtracker/Tasks/7

2. Плохая объектная модель. Доказано, что хорошее программное обеспечение должно состоять из повторно используемых компонентов. На веб-сайте ASP.NET MVC нет ничего, что можно было бы повторно использовать. Например, если вы внедрили интеллектуальный выпадающий список один раз, будет трудно использовать его снова (даже на том же веб-сайте).

3. Отсутствие контроля. Некоторые функции (например, TreeView или Menu) уже реализованы как элементы управления, и было бы бесполезно тратить время на их повторное использование с помощью mvc.

На вашем месте я бы попытался найти CMS и настроить ее для нужд веб-сайта.

К ответам: ДА. Я знаю о недостатках управления ASP.NET, но вопрос о ASP.NET MVC. Можно написать книгу о том, что хорошо и что плохо в ASP.NET, но я не думаю, что уместно обсуждать это здесь.

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