Платформы для создания сайтов: CMS, фреймворки и SaaS-решения

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

Для создания сайта, как правило, выбирается одна из платформ: CMS, фреймворк или SaaS-решение. У каждого из типов платформ есть как плюсы, так и минусы.

Самый простой вариант — SaaS

SaaS-платформы еще часто называют «конструкторами сайтов». Из примеров — Тильда и Wix для простых сайтов, Shopify и inSales для электронной коммерции. Основное преимущество этого варианта — весьма хороший уровень качества за очень небольшие деньги. Обычно цены на SaaS-решения составляют порядка 6 000 рублей по тарифам начального уровня и редко превышают 60 000 рублей в год по «старшим» тарифам в линейке. По сути, заказная разработка в этом ценовом сегменте обеспечивает реализацию проектов, сильно уступающую по всем характеристикам.

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

Наиболее распространённый вариант — это разработка на CMS

Система управления сайтом (Content Management System) — это программный продукт, который служит для разработки некоторых стандартных разновидностей сайтов. Почти все CMS модульные, а модули многих из них собраны в комплекты (или редакции), предназначенные для тех или иных видов сайтов. Есть коробочные CMS для простых сайтов, для каталогов, для интернет-магазинов, для блогов, для новостных порталов и для других видов сайтов.

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

Самая гибкая и наиболее мощная платформа — фреймворк

Фреймворк — это программный продукт, который служит основой для сайта, но обычно не содержит в себе готовых программных модулей для реализации конкретных бизнес-процессов. Выражаясь техническим языком, фреймворк — это более низкоуровневое решение, нежели CMS. Разработчики, при создании сайта на фреймворке, создают не только публичную часть сайта, но и проектируют базу данных, разрабатывают алгоритмы для модулей системы, а также создают административный интерфейс для управления проектом. Необходимость серьёзных затрат на программирование делает разработку более дорогой, но и результат получается более индивидуальным.

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

Мы, например, разрабатываем серьёзные веб-проекты на фреймворке Ruby on Rails. Данный фреймворк позволяет создавать действительно сложные сайты, бизнес-приложения и веб-сервисы. Скорость работы и устойчивость к нагрузкам у таких решений на порядок выше (в сравнении с CMS), а сопровождаемость и стоимость владения при этом не сильно отличаются.

CMS-платформы

CMS на рынке существует много и они очень разные:

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

Подробная статья о CMS →

Фреймворки

Фреймворки — это платформа для сложных сайтов или веб-приложений, которая оптимально подходит для создания сайтов и веб-приложений по индивидуальному проекту, которые должны работать быстро и выдерживать серьёзные нагрузки. Надо быть готовым к тому, что при выборе фреймворка в качестве платформы для разработки, придётся достаточно много времени и ресурсов потратить на разработку бизнес-логики, это плата за гибкость.

Подробная статья о фреймворках →

Какая платформа лучше: CMS или фреймворк?

Ответ на это вопрос очень прост — смотря что именно надо разработать: если проект простой и требования к нему самые обычные, то выбирается CMS, а если проект сложный, то проще его на фреймворке делать.

Подробнее про выбор между CMS и фреймворком →

SaaS-платформы

Также сейчас «набирает обороты» создание сайтов на SaaS-платформах. SaaS-платформа для создания сайтов — это возможность запустить достаточно простой веб-проект очень быстро и крайне дёшево (причём еще и на условиях аренды). Решение подходит для простых сайтов, временных проектов и для проверки бизнес-идей. SaaS-платформы, как и CMS, бывают специфическими (только для интернет-магазинов, например) и универсальными (для всех типовых видов сайтов).

Подробная статья о SaaS-платформах

SaaS — самое простое, быстрое и недорогое решение для старта простых проектов

CMS — оптимальный выбор для достаточно типовых проектов, но где уже есть необходимость в незначительной кастомизации

Фреймворки — правильное решение для сложных проектов под высокие требования к надёжности, нагрузкам и скорости работы

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

Однако некоторые проекты проще сделать на CMS, некоторые — на фреймворке, а разработка без использования платформ редко бывает рациональным решением с точки зрения бизнеса. В большинстве случаев, выбор платформы стоит основывать на экономических критериях. В статье приведены основные критерии, которые позволят принять обоснованное решение по этому вопросу.

Узнать больше →

Простые проекты проще, быстрее и дешевле делать на коробочных CMS, а сложные проекты эффективнее разрабатывать на фреймворках

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

  • При возможности найти готовые решения или продукты — используйте их. В большинстве случаев, оптимальная стратегия выбора: «чем проще — тем лучше».
  • Если у вас есть команда разработчиков, то прислушайтесь к их мнению. Важны как возможности самой платформы, так и наличие у команды опыта работы именно с этим технологическим стеком.
  • Заранее оцените «заточенность» выбранной платформы под ваши задачи. Не стоит на 100% доверять маркетинговым материалам вендора платформы.
Узнать больше →

Если устраивает уже существующая платформа — не «изобретайте велосипед». Но не доверяйте полностью маркетинговым заявлениям вендоров — «коробочную» функциональность всегда надо изучать и проверять.

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

Cтатьи по теме:

CMS — коробочные системы управления сайтами
Система управления сайтом — это программный продукт, который создан для упрощения создания основных видов сайтов. Как правило, системы управления достаточно универсальны, то есть на них можно собрать что угодно: от информационного сайта до интернет-магазина или портала.
Фреймворки в веб-разработке
Фреймворки — это программные продукты, которые упрощают создание и поддержку технически сложных или нагруженных проектов. Фреймворк, как правило, содержит только базовые программные модули, а все специфичные для проекта компоненты реализуются разработчиком на их основе. Тем самым достигается не только высокая скорость разработки, но и большая производительность и надёжность решений.
Фреймворк Ruby on Rails
​Rails — это прежде всего среда разработки, которая великолепно подходит для создания любого типа веб-приложений: систем для управления веб-сайтами и платформ для ведения электронной торговли, программ для организации совместной работы и для веб-сервисов для осуществления коммуникации, для учетных и ERP-систем, статистических и аналитических систем.
Язык программирования Ruby
Ruby (ruby — рубин, руби) — интерпретируемый мультипарадигмальный язык программирования: динамический, объектно-ориентированный, рефлективный, императивный, функциональный. Активно используется в веб-разработке, в системном администрировании и в работе операционных систем (Mac OS X, Linux, BSD).
.NET Framework и ASP.NET — платформы для веб-разработки
.NET Framework — это программная платформа, выпущенная компанией Microsoft, которая подходит для разных языков программирования. ASP.NET — технология создания веб-приложений и веб-сервисов от компании Microsoft. Она является составной частью платформы Microsoft .NET и развитием более старой технологии Microsoft ASP.
Django — фреймворк на Python
Django — это программный каркас с богатыми возможностями, подходящий для разработки сложных сайтов и веб-приложений, написанный на языке программирования Python.
Почему стоит выбрать Ruby on Rails для разработки веб-приложения или сайта?
Разработку веб-проектов на текущий момент экономически целесообразно вести на одном из следующих языков: PHP, Java, Ruby, а также на Python и на базе .NET (это мультиязычный фреймворк). И каждый из языков имеет далеко не по одному фреймворку, написанному на нём. Так в чём же преимущества выбора языка программирования Ruby и фреймворка Ruby on Rails с точки зрения бизнеса?

Тематические технологии:

Язык программирования Ruby
Фреймворк Ruby on Rails
Язык программирования Elixir
Фреймворк Phoenix
Язык программирования Python
Язык программирования Go
Websockets
Система управления сайтами 1С-Битрикс