CMS, фреймворк или собственная разработка: что выбрать?

CMS

CMS – система управления контентом. Распространяется на бесплатной или платной основе.

Подойдет для проектов:

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

Плюсы

  • Нужно создать только внешнюю сторону сайта и «натянуть» ее на движок;
  • можно сделать сайт даже без знания программирования;
  • легко настраивать и администрировать, административная панель знакома большинству пользователей (если речь о популярных CMS: WordPress, Joomla и т.д.);
  • CMS включает в себя весь основной функционал;
  • функционал можно расширить за счет большого количества плагинов;
  • есть хорошая и понятная документация (опять же, для популярных CMS);
  • имеется API, который можно использовать для разработки и интеграции с другими сервисами.

Минусы

  • Ограниченный набор функций;
  • небольшая техническая поддержка;
  • изначально низкая производительность, т.к. в движке заложено много возможностей (которые вы даже не используете);
  • уязвимость, популярные CMS проще взломать (и их часто взламывают).

Фреймворк

Фреймворк – это набор элементов, готовая структура, написанная на определенном языке программирования. Фреймворк дает каркас для будущего проекта.

Подойдет для проектов:

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

Плюсы

  • Есть готовые элементы, которые можно использовать при разработке;
  • высокая производительность;
  • безопасность;
  • отлаженность кода;
  • гибкие решения, разработка ведется исходя из поставленных целей, можно найти решения для нестандартных задач;
  • возможность использовать библиотеки и другие готовые решения.

Минусы

  • Нужны опытные разработчики, разработка сложнее, чем при использовании CMS;
  • административную часть нужно создавать самостоятельно;
  • увеличивается время разработки, т.к. она сложнее;
  • увеличивается и стоимость проекта;
  • дороже поддержка сайта, сложнее найти тех, кто сможет поддерживать и администрировать.

Собственная разработка

Собственная разработка – это создание сайта с нуля. Сайт пишется, например, на чистом HTML или PHP.  Весь функционал пишется с нуля.

Подойдет для проектов:

  • нетипичных, новых, уникальных, которых еще нет в сети;
  • без жесткого ограничения времени на разработку (и финансовых вложений);
  • с оригинальным и сложным функционалом, нигде до этого не представленным.

Плюсы

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

Минусы

  • Нужно полностью разработать сайт с нуля, что затратно по времени и ресурсам;
  • разработчикам со стороны сложнее разобраться в проекте; тяжелее найти человека, который будет поддерживать сайт, если основной разработчик уйдет;
  • необходимо найти квалифицированных специалистов, которые реализуют все задуманные специфические задачи;
  • большой бюджет.

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

Межтекстовые Отзывы
Посмотреть все комментарии
guest

10 лучших конструкторов сайтов

Разработка #Веб-дизайн #Сервисы #Подборка #HTML/CSS #Конструктор Конструктор сайтов – это специальный сервис, позволяющий создать сайт без помощи программистов и...

Лучшие компиляторы кода и IDE для C++

Разработка #C/C#/C++ #Программы #IDE #Редакторы кода #Подборка Рассказываем о лучших компиляторах и инструментах для разработки на С++. Что...

11 лучших приложений для изучения программирования

Разработка #C/C#/C++ #Программы #Сервисы #Подборка #JavaScript Рассказываем о лучших приложениях для смартфонов, которые помогут обучиться программированию и веб-разработке. ...

Что такое Data Science

Разработка #Облачные решения #Обзор #Технологии #Аналитика #Карьера Поговорим о том, что такое Data Science, почему она так важна...

Руководство по изучению Python

Разработка #Обзор #Веб-дизайн #Python Язык программирования Python считается одним из наиболее перспективных для написания кода, используемого в различных...

Как установить Git на Debian 10

Разработка #Серверы #OpenSource #Debian Система контроля версий (например, Git) позволяет регистрировать изменения в файлах, с которыми работают разработчики,...

Руководство по работе с Kubernetes для начинающих

Разработка #Серверы #Настройка #Docker #Ubuntu #CentOS Kubernetes – это портативная расширяемая платформа для управления контейнерами на серверах. Она...

Как создать рекламный сайт

Разработка #Монетизация #Реклама #Конструктор Рекламный сайт – это ресурс, нацеленный на продажу товаров или услуг. Вся информация, находящаяся...

Что такое дополненная реальность

Разработка #Google #Продажи #Технологии #Сервисы Выбирали когда-нибудь кроссовки или диван в интернете? Не очень удобно, верно? Было бы...

Двумерные массивы в Python и методы работы с ними

Разработка #Разбор #Python Иногда нам приходится использовать таблицы с данными для решения своих задач. Такие таблицы называются матрицами...

Что такое User agent и как его изменить

Разработка #Браузеры #Веб-дизайн #Безопасность Во время взаимодействия с браузером пользователь может встретить такое понятие, как User agent. Используется...

Что такое рефакторинг кода

Разработка #Обзор #Технологии #IDE #Редакторы кода #JavaScript Зачем разработчики на регулярной основе переписывают свой и чужой код, не...

Как сделать приложение из веб-сайта

Разработка #Плагины #Веб-дизайн #Сервисы #WordPress #Конструктор Разработчики популярных веб-ресурсов стараются сделать все возможное, чтобы клиентам было комфортно потреблять...

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

Разработка #Браузеры #Веб-дизайн #HTML/CSS Часто возникают ситуации, когда необходимо проанализировать содержимое веб-страницы: посмотреть description, узнать размер какого-то элемента...

Что такое баг: поговорим об ошибках в программировании

Разработка #Программы #Обзор #Игры #Ошибки Ошибки в программах – дело обыденное. Приложения зависают, вылетают, перестают запускаться. В простейшем случае пользователь...

Лучшие сайты для изучения программирования

Разработка #Сервисы #Подборка #IDE #Карьера Рассказываем о лучших сайтах для изучения программирования.  Для удобства все ресурсы поделены на...

Микроразметка Open Graph: базовые принципы и настройка

Разработка #Социальные сети #Контент #HTML/CSS #SEO Микроразметка помогает роботам ориентироваться на страницах сайта и забирать для формирования поисковой...

Создаем бесплатный callback-виджет с SMS и Telegram-оповещением

Разработка #Telegram #JavaScript #HTML/CSS В этой статье мы пошагово создадим виджет обратного звонка с красивой минималистичной анимацией и...

Криптопрограммирование: особенности и перспективы

Разработка #Криптовалюта #Фреймворки #Обзор #Технологии Разработка – перспективное и денежное направление. Эта сфера привлекает все больше людей, даже...

Верстка сайта: инструкция для начинающих

Разработка #Веб-дизайн #HTML/CSS Разработка сайта – это долгая и плодотворная работа, которая, как правило, разделена на несколько этапов....