Cамописный движок?
Очень часто в последнее время на разных форумах и блогах встречаю советы заказывать непременно т.н. самописный движок. Т.е. программное обеспечение Вашего сайта (CMS), которое исполнитель создаст "с нуля", не используя при этом никаких готовых решений.
так в чем их преимущество перед коробочными версиями (CMS)? Давайте попробуем разобраться.
Основное преимущество любого самописного движка по мнению тех кто их рекомендует - безопасность. Аргумент такой: если никто не сможет увидеть внутренности движка то и взломать его никто не сможет. Это утверждение весьма спорное. Все зависит в большой степени от того какими стандартными функциями воспользуется создатель такого движка и насколько он предусмотрит основные требования к безопасности любого скрипта.
Даже если потенциальный вредитель не знает устройство движка, это не помешает ему протестировать уязвимости всеми доступными способами. Вот пример из нашего прошлого разговора. Различных способов атаки существует масса. Конечно то, что движок самописный и в единственном экземпляре несколько затруднит поиск уязвимостей. Однако один - два создателя врядли смогут предусмотреть 100% защиту от всех типов уязвимостей.
Есть еще один серьезный недостаток такого решения: это отсутствие документации, сложная расширяемость функционала. Наш движок в едиснственном экземпляре и все модули нужно заказывать разработчику, т.к. нет готовых решений.
А если, например, Вы для своего проекта заказываете у Web-студии или фрилансера сайт под который они создадут движок то кто может дать гарантию что этот фрилансер или студия будут обслуживать этот движок столько времени сколько Вам надо? Сдадут сайт, предоставят инструкцию по использованию, поднастроят всё как надо и вуаля! А понадобяться со временем какие то доработки или усовершенствования? Искать другого разработчика который несколько дней будет разбираться в устройстве этого движка только ради 2-х, 3-х строчек кода который нужно добавить? Не слишком ли дорогое удовольствие?
Давайте рассуждать дальше. "Коробочные" версии CMS (движков) как правило разрабатывает не один-два человека, а группы программистов. А те движки, у которых версия не уже v1.0, разрабатываются уже не один год. Такие системы, как правило, хорошо документированы. Они имеют целую армию пользователей, которые сообщают разработчикам о найденных ошибках и уязвимостях. Именно по-этому такие системы являются устойчивыми к большинству типу "стандартных" способов взлома. Но и здесь нет 100% гарантии. Хотя безопасность "коробочных" систем несомненно выше, нежели у "самописных". И ошибок в "коробках" бывает намного меньше.
Группа программистов за длительное время в состоянии сделать то, что совсем не под силу одному-двум разработчикам за короткое время. Это факт. И тот, кто говорит Вам, что сможет сделать для Вас, например интернет магазин "с нуля" за 2 недели, на самом деле использует либо какие-то готовые решения, либо просто лукавит. Вы только представте себе, что это тысячи и тысячи строк программного кода...
Вот по этим причинам я и советую никогда не использовать самописные движки. Исключение, если Вы Web-разработчик и делаете его для использования исключительно на своем сайте либо в целях практики в программировании.
А если, допустим, нужен функционал, которого нет ни в одном из существующих движков, то всё же лучше всего заказать доработку какого то готового движка у самих разработчиков - уверен что деньги будут потраченны с большей пользой.
И несколько аналогий: никому же приходит в голову изобретать колесо, смотреть самоспаянный телевизор (Pioneer, например) или ездить на самосбороном Audi. (хотя и тут возможны исключения).
Если же кто то считает я не прав (или наоборот, согласен со мной, но есть что сказать), прошу в комменты!
P.S. Добавлю как разработчик, что я тоже занимался созданием движка для сайта. Ради практики. Одно время он даже применялся на одном из моих сайтов. А еще в бытность студентом написал текстовый редактор, медиа проигрыватель, рисовалку (типа Paint). Были и другие работы. Но последнюю никак нельзя предлагать в качестве альтернативы PhotoShop или мой плеер как альтернативу тому же Aimp.
Комментарии:
Оставить комментарий:
* Просьба все технические вопросы, которые могут потребовать обсуждения, задавать на форуме.
** все некорректные и рекламные посты будут удаляться, ненормативная лексика и оскорбительные высказывания запрещаются.