В течение следующих нескольких недель многие мои исследования будут посвящены различным CMS. Я уже кратко рассмотрел episerver и umbraco. Читая эти системы, я не могу не думать о том, что предоставление функций управления контентом достижимо без изучения деталей и структуры многих из этих (довольно крупных) платформ CMS.
В прошлом мне давали проекты, в которых моя роль разработчика должна быть отделена от роли редактора (имеет смысл). т.е. моей задачей было разработать дизайн и функциональность сайта, а также работу моих клиентов по обновлению контента. Я достиг этого, также реализовав своего рода «портал», на котором было несколько страниц, которые принимали бы ввод текста, загрузку изображений и т. Д. (В основном, любой контент, который они хотели), записывали этот новый контент в базу данных и затем по замыслу программный код будет считывать все это из базы данных в соответствующие элементы управления (например, повторители).
Для меня это был достаточно эффективный способ управления контентом моих клиентов для развертывания с моими решениями. Я знаю, что я не прав - и что CMS предпочтительнее тех, которые создаются с нуля, но почему, кроме вопроса стоимости, почему?
Ответы:
Вы используете существующую CMS, чтобы избавиться от веса функций, которые, вероятно, важны для пользователей, которых вы не хотите отслеживать.
EPiServer, Umbraco, Orchard и т. Д. Имеют встроенные опции для отслеживания таких вещей, как версии, с каким контентом связан другой контент, как создавать формы и т. Д. И помимо этого у них есть события, которые вы можете подключить, чтобы изменить их как вы считаете нужным.
У них, как правило, есть тысячи часов устранения неполадок, так что почему бы не воспользоваться ими. Особенно в бесплатных версиях или версиях с открытым исходным кодом, где вам буквально ничего не стоит, кроме времени на изучение их API, которое я почти гарантирую, - меньше времени, чем вы тратите на воссоздание этой функциональности.
Так что, если вам не нужно перестраивать функциональность, которую они предоставляют, почему бы не использовать что-то, что, как известно, работает хорошо?
Вот лишь краткий список существующих функций, которые вам не придется реализовывать самостоятельно:
источник
Нет НЕТ однозначного ответа о том, какие из них лучше. Это зависит от ваших потребностей, структуры, стоимости, силы человека и ряда других факторов.
Готовая / установленная CMS
Pros
Cons
Домашняя / изготовленная на заказ CMS
Pros
Cons
Если у вас есть время, и ни одна из готовых систем не отвечает всем требованиям или слишком сложна, я не вижу причин, чтобы не создавать свои собственные, за исключением, конечно, затратного по времени фактора.
источник
Возможно, вы захотите добавить веб-безопасность к обсуждению. Если вы создаете CMS с нуля, скорее всего, у вас будут уязвимости к ряду атак (см., Например, https://www.owasp.org/index.php/Top_10_2010-Main ). Если вы, с другой стороны, используете существующую CMS, она, как правило, будет более безопасной, но, с другой стороны, ее уязвимости будут более распространенными.
Так что это немного компромисс с точки зрения безопасности, но я бы сказал, что хорошо обновленная «стандартная» CMS более безопасна, чем домашняя, но в некоторой степени зависит, какую из стандартных вы выберете.
Однако, если вы используете «стандартную» CMS и делаете много изменений, вы можете нарушить путь обновления и в конечном итоге не сможете обновить вашу CMS, и, таким образом, вы уязвимы.
источник
Необходимо учесть одну вещь: ваша CMS может устареть не обязательно по языку, а скорее по функциональности и дизайну. Следующая группа программистов может не захотеть работать с этими ограничениями в функциональности и настолько, насколько это может испортить их имидж!
Если это простой веб-сайт или у вас мало времени, CMS звучит великолепно!
источник
Причина номер один для создания собственной CMS - возможность со временем добавлять в нее свои собственные функции. С готовой CMS вы привязаны к архитектуре и технологии третьей стороны, которая ее создала.
Примеры:
Umbraco - использование XSLT для разметки - #fail
Orchard - изощренная и обучающая кривая для разработчиков Web Forms
...и т.д.
источник
Придерживаться основного бизнеса - довольно хороший аргумент, я бы сказал. То, что вы строите автомобиль, не означает, что вы должны также создавать свое собственное топливо. Это совершенно другой продукт, и вполне вероятно, что кто-то другой сделает это намного лучше, так как вы сосредоточитесь на другом месте. Ошибки в недавно разработанных системах также не следует недооценивать. У смс, который был некоторое время назад, будет несколько ошибок да, но нет рядом с номером, который будет у вашего нового. Существующие CMS были проверены миллионами пользователей на протяжении многих лет.
источник