Использовать ли CMS или нет - PullRequest
       17

Использовать ли CMS или нет

6 голосов
/ 02 января 2011

Мне стало интересно, есть ли в ASP.NET Webforms / MVC место для инструментов веб-разработчиков? .. Кажется, что системы CMS, такие как Umbraco, заменили работу веб-разработчиков.Да, я знаю, что эти системы CMS построены с использованием ASP.NET Webforms / MVC - однако есть ли хоть какая-то причина для изучения этих вещей, если все, что вы собираетесь сделать, это использовать систему CMS в любом случае?- Также я не могу найти ситуации, когда система CMS может быть заменена вашим собственным веб-приложением.

Поэтому у меня такой вопрос: есть ли какая-либо причина для изучения Webforms / MVC при использовании CMS?* РЕДАКТИРОВАТЬ:

Мой вопрос может быть больше похож на: Когда я должен использовать CMS, и когда я должен пойти и создать свое собственное веб-приложение?

Ответы [ 7 ]

20 голосов
/ 03 января 2011

Проблема с решениями CMS, и я имею в виду все решения CMS (не только Umbraco или другие решения .NET, но на любом языке), состоит в том, что вы всегда будете платить цену за их использование. Вы можете получить больше за счет экономии времени, обеспечиваемой с помощью CMS, но есть некоторые компромиссы:

  • Вы пожертвуете большой гибкостью
  • Вы можете заплатить значительный штраф за производительность. Многие CMS загружают большое количество модулей и кода для обслуживания каждого запроса, и большая часть этого не относится к конкретной функции страницы. (хотя некоторые CMS чудовищно тяжелее других!)
  • Будущее вашего проекта связано с еще одним поставщиком, и их собственный выбор
  • Очень часто вы исключаете возможность использования других баз данных, которые могли бы лучше соответствовать потребностям вашего клиента (Umbraco не поддерживает PostgreSQL, Kentico поддерживает только SQL Server)

Как только вы начнете использовать CMS, вы будете привязаны к выполнению архитектурных решений и API инфраструктуры CMS, и в конечном итоге вы сможете загнать себя в угол.

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

С другой стороны, если вы создаете веб-сайт с потенциально сотнями страниц, с большим количеством пользовательского контента и гораздо меньшим количеством веб-приложений, то часто CMS - это путь, и имеет много смысла. Но помните, что теперь у вас есть две платформы и два API для изучения и управления (платформа вашей платформы и платформа CMS).

18 голосов
/ 02 января 2011

Написание CMS похоже на вторжение в Афганистан.

Каждый получает ход, но никто не выигрывает.

8 голосов
/ 02 января 2011

Я не думаю, что переполнение стека могло быть создано с помощью CMS.Это отвечает на ваш вопрос?=)

Обновление

Чтобы ответить на ваш обновленный вопрос.

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

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

Я лично используюCMS для нашего отдельного веб-сайта и инфраструктура MVC для создания пользовательских и административных интерфейсов для наших продуктов.

4 голосов
/ 03 января 2011

Не каждая проблема нуждается в CMS.Точно так же не каждая проблема нуждается в специальном веб-сайте MVC / webforms.Это зависит от ваших требований.Вы выбираете технологию для решения проблемы.

Сборка против покупки - самое трудное решение.Как разработчик сборки всегда выглядит лучше.Вы можете сделать лучше, чем та куча карпа, которую они хотят купить.Не имеет значения, что вы заново изобретаете колесо, ось, тележку и т. Д. Для пользователей / менеджмента покупка всегда выглядит лучше всего.Им не нужно много думать о том, что они хотят, и могут получить это сейчас, а не через 3 месяца после того, как вы это напишите.Они забывают, что это будет стоить столько же, чтобы настроить и сделать невозможным обновление.

Я прекращу разглагольствовать.

3 голосов
/ 16 мая 2014

Umbraco - довольно скромная минимальная CMS.Чтобы настроить его (например, Версия 7+), вам необходимо знать Heavy MVC, JSON, XML, Sql и т. Д.

Фактически сайт, построенный на Umbraco 7+, полностью основан на представлениях MVC, которые вы установили сами.и назначить SurfaceControllers (которые являются контроллерами MVC), и все, что вы действительно получаете, - это возможность пользователям редактировать информацию о ваших страницах и управлять Umbraco для вас в БД.

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

Вы используете Umbraco для организации типов документов, которые определяют, какие шаблоны используются (представления MVC).для рендеринга различных типов документов (например, веб-страниц), а затем вы создали шаблон с нуля со 100% -ным контролем над HTML, Css и Javascript, которые получают выходные данные.

Imo Umbraco - это скорее Frameworkкак Django, чем полная CMS.

Конечно, вы можете создать сайт в Umbraco и ничего не настраивать, но это будетЯ был бы довольно сырым сайтом.

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

Теперь sharepoint был бы более полноценной CMS из коробки, с которой вы могли бы многое сделать, но давайте посмотрим на некоторые проблемы с SharePoint ...

  1. Resource Heavy, съедает 50+ гигабайт доinstall
  2. Потребляет 16 ГБ оперативной памяти только для загрузки (Sharepoint 2013)
  3. Требуется Sql Server 2008 R2 или эквивалентный (корпоративная лицензия, $$ chaching)
  4. Требуется WindowsСервер ($$ chaching)
  5. В принципе, это монстр, если все, что вам нужно, это редактируемая пользователем платформа blod ... человек, какая трата денег.Foundation бесплатен, но не включает в себя такие элементы, как шаблон сайта блога, поэтому вы покупаете корпоративную лицензию на сервер ($$ big cachinge, 40 000 $ + в некоторых сценариях ...)
2 голосов
/ 02 января 2011

Согласовано. CMS, подобная Umbraco, предоставляет (очень) хорошее готовое решение для самых простых приложений. Любая специализированная цель потребует дополнительных знаний в области программирования. Тем не менее, и ваша главная, если не первичная потребность будет хорошим пониманием бизнес-потребности. Я думаю, что мы уходим от создания самих Legos и до создания аккуратных игрушек с Legos. Ура!

1 голос
/ 02 января 2011

CMS (или аналогичная прикладная среда) предоставит вам множество функций из коробки, и многие из них также имеют хорошую библиотеку плагинов.Но вам все равно придется писать код WebForms / MVC, если вы хотите добавить какие-либо пользовательские функции.

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