CMS или Framework?

26.07.2014

Существуют жесткие споры что же использовать CMS или фреймворк?

Расскажу, как я решил этот вопрос для себя. Я успел поработать с самыми разными CMS, но в итоге для себя выбрал Bitrix и только Bitrix! О плюсах и минусах битрикса я писал ранее. Наверное 98% всех задач я делаю на битриксе.

Но бывают задачи, для которых битрикс не подходит:

  • Битрикс слишком дорогой для "простых" непрофильных задач. Ну на самом деле задача может быть и не простой, а очень даже сложной. Это, какие либо, сайты агрегаторы, сайты отчеты, сайты расписания. Их всех объединяет то, что им не нужна мощная админка битрикса.
  • Битрикс слишком тяжелый для очень большой нагрузки. Сайт типа Вконтакта на битриксе я бы делать не стал:).

В таких случаях я использую Yii. Это мой первый php фреймворк, я не могу по личному опыту сказать чем он лучше или хуже других. Но выбор мой не случаен, я прочитал массу обзоров, пообщался с рядом людей, просмотрел различные таблицы сравнения, и в итоге, остановился на Yii. И сейчас я продолжаю убеждаться в правильности моего выбора.

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

Итак, можно ответить на, поставленный вначале, вопрос так: CMS И Framework! В моем случае это Bitrix и, в исключительных случаях, Yii.

upd от 18.01.2019

Прошло больше 4-х лет с момента написания оригинальной статьи, пришло время её дополнить.

Так ли тормозит битрикс по сравнению с фреймворками?

Чистое ядро битрикса стартует за 0,1 сек. (замер на моем локальном компьютере, конфигурация уже давно не топовая, диск SSD). Фреймворки (я проверял symfony и yii ) стартуют примерно за 0,05 сек. Тут фреймворки выигрывают. Весь вопрос: на сколько? В два раза или на 0,05 сек.?

Мне приходилось наблюдать ряд сайтов, сделанных на фреймворках. Сайты вполне обычные, не сложные, даже не интернет магазины, не предполагающие космическую нагрузку. Но разработчики решили выпендриться зачем то использовать фреймворки (разные: видел и yii, и symfony, и laravel). Итог сайты грузились больше чем за секунду... У меня на битриксе эти же самые сайты отрабатывали бы за 0,2-0,3 секунды... и это если сделать все стандартно и не упираться в оптимизацию, ведь никто не мешает и на битриксе все-все перекешировать и отдавать полный html из memcached вообще не подключая ядро.

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

Что бы я все таки выбрал? (размышления на 2019 год)

Если нужно сделать "стандартный" сайт: с админкой, с контентом, с html страницами - я бы выбрал битрикс. Тем более если речь идет об интернет магазине. Абсолютно не вижу смысла изобретать на фреймворке админку для интернет магазина... чтобы повторить битрикс понадобятся годы. Тогда как сайт на битриксе вполне можно оптимизировать чтобы он работал быстро. И главное нет предела оптимизации.

Если нужно сделать API систему, RESTful API например - тогда я бы выбрал фреймворк. Почему? Потому что апи система предполагает большое количество простых запросов к серверу, отсутствие жестко привязанной админки. Т.к. на простом запросе ядро битрикса проигрывает фреймворку 0,05 сек. А админка представляет собой другую систему общающуюся с сервером по тому же апи, это может быть веб приложение, мобильное приложение или вообще десктопная 1С...

Какой фреймворк выбрать на 2019 год?

Сейчас я бы остановился на Symfony. Я рассматривал 3 варианта: Symfony, Yii, Laravel. Ранее я советовал Yii 2, но к сожалению его развитие сильно замедлилось, да хуже он не стал, но другие фреймворки его обошли. Symfony или Laravel? Пока не было Symfony 4 - я бы затруднился ответить. Но с приходом Symfony 4 можно сказать что появился мой идеальный фреймворк. Это в базовой комплектации микро-фреймворк - который не содержит ничего лишнего. Но при этом легко подключаются все необходимые компоненты. Таким образом Symfony ничего не навязывает разработчику и предоставляет свободу выбора. Мне очень нравится такой подход.

Комментарии:

Григорий

03.08.2015 15:45:26

Тема "сисек" не раскрыта :) Я тут пока гуглил нашел такую статью http://webmartsoft.ru/blog/razrabotka-saita-cms-framework.html . Тут более-менее по полочкам разложено и то с некоторыми вещами я б поспорил.

Андрей

09.10.2015 02:06:48

Битрикс полная х***а - причем допогая!
Используй фреймворк -Laravel - и спать крепче будешь!

Максим

09.10.2015 06:21:13

Андрей, зачем оставлять пустые, бесполезные комменты?
По принципу: "не покупай жигули, они плохие, ездей на трамвае, у него удобное расписание..."

Евгений

13.11.2015 17:11:31

По моему реклама бит....кса..
Причем такое СЕО описание с этим словом. В общем сеошники оценят ибо сайт в ТОПЕ по ключевому запросу соответствующему заголовку статьи

Максим

13.11.2015 18:18:30

Евгений, спасибо за похвалу относительно СЕО. Приятно, т.к. я ни разу не сеошник:) Что касается рекламы битрикса, то это не так, во всяком случае битрикс мне за это не платит (хотя наверное следовало бы:) )
PS удалил ссылку на ваш сайт из вашего имени, неуместна она там:)

Иван

05.04.2016 21:15:02

Битрикс знаю, Laravel изучаю и wordpress для бложиков. Пока это мой арсенал.

Анастасия

05.01.2017 19:59:06

Здравствуйте. Разрешите задать вопрос по теме.
Для проекта создания сайта-каталога профессиональной косметики (для существующей розничной сети) с возможностью оформлять заказ (не покупать) сразу после запуска проекта и с возможностью создания полноценного интернет-магазина в будущем. Синхронизация с 1с планируется. На старте это выгрузка описаний товара и фото (их тех товаров, что в наличии в сети). в перспективе - передача информации об остатках и бронирование их в момент покупки на сайте.
Вот и думаю что предпочесть битрикс (изначально я рассматривала эту cms) или фреймворк (очень рекомендуют и веб-мастер нашей компании и разработчик).

Максим

06.01.2017 07:45:54

Анастасия, используйте битрикс. Я понимаю почему ваши разработчики советуют фреймворк, свой велосипед всегда интересно изобретать. Но оно вам надо? По деньгам получиться точно дороже, а вот лучше ли по качеству - вопрос?
Битрикс далеко не идеальный, но то что нужно для интернет магазина - там есть, и можно добиться чтобы все отлично работало. А начиная такую разработку с нуля сложно учесть абсолютно все. Вероятный сценарий - это получится самый базовый функционал по цене дороже битрикса. А все доработки будут дорого обходится, т.к. изначально небыли предусмотрены. Поддержкой проекта смогут заниматься только сами разработчики, другим программистам будет сложно вникать в чужой код и чужую структуру.

Анастасия

06.01.2017 15:22:12

Максим, спасибо за оперативный ответ.

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

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

Алексей

12.05.2017 19:01:39

День добрый! Помогите разобраться.
Сейчас есть сайт grandisvillas.ru фрейморк laravel , пларию переделать сайт по принципу аирбнб, но для этого сказали надо писать новый движок примерно 1 год и денег чемодан, предлагают сделать на битриксе, тоесть админка вроде как готова, но не понятно, потянет ли битрикс. Хочется услышать мнение профессионала. Спасибо

Максим

12.05.2017 20:41:46

Алексей, я работал с похожим проектом на битриксе: invest-miel.ru - посмотрите, битрикс справляется. Но хоть для битрикса, хоть для фреймворка нужны прямые руки, и чемодан денег.

Макс

26.03.2018 12:38:29

yii -отличный выбор, bitrix - сомнительно, только для магазина, как по мне, в остальном, это адский монстр, который тянуть в 98% странное занятие.

Тоже писал статью на тему, если интересно:
https://vk.com/@framework_yii-or-cms

Оставить комментарий:

Представьтесь пожалуйста:
Электронная почта:
Электронный адрес не публикуются
Текст сообщения:
Для подсветки кода, оборачивайте ваш код в теги <code></code>
Введите 5 цифр с картинки:

Рекомендую:

Поддержать проект: