← Все постыНаписать

Я не понимаю, почему все хейтят 1С-Битрикс: плюсы и минусы

Я не понимаю, почему все хейтят 1С-Битрикс. У него есть плюсы и минусы, но это платформа, которую знает каждый контент-менеджер, и проекты на ней выдерживают 3–5 млн визитов в месяц. Главный минус — найти фуллстека, поэтому мы пишем на Битриксе отдельное API на Slim.

Единственная платформа, где каждый контент-менеджер в стране знает как ей пользоваться.

Годами проверенное решение в глазах заказчиков. История с начала двухтысячных с вложениями в маркетинг всю дорогу.

Есть примеры проектов, которые без значимой оптимизации выдерживают по 3-5 млн визитов в месяц.

Из действительных проблем — это сложно найти фуллстеков на 1С-Битрикс. Всегда получалось, что либо недофронт, либо недобэкендер.

Мы последние 2 года пишем отдельное API на 1С-Битриксе. Делаем это на Slim — это урезанный PHP-фреймворк. На нём офигено удобно собирать API.

Изначально делали для мобилок, потом поняли, что можно на это же API и фронт подключить.

В итоге программисты довольны, фронт не трогает бэкенд, бэкендер не трогает фронт.

В любой непонятной ситуации с Битриксом — пишите API :)

За что 1С-Битрикс выбирают заказчики

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

Для заказчика это ещё и снижение рисков. Если текущий подрядчик уйдёт, найти нового на Битриксе проще, чем на редком фреймворке или самописной CMS.

Ещё один довод — привычка рынка. Платформа продаётся в России с начала 2000-х, у неё тысячи партнёров-интеграторов и магазин готовых модулей Marketplace.

Обмен с 1С из коробки

Для интернет-магазина это главный плюс. Каталог, цены, остатки и заказы синхронизируются с 1С по стандартному протоколу CommerceML. На других платформах такой обмен часто приходится писать или покупать отдельно.

Редакции и лицензия

«1С-Битрикс: Управление сайтом» продаётся в нескольких редакциях: от «Старта» для простых сайтов до «Бизнеса» и «Энтерпрайза» для крупных магазинов. Лицензия покупается один раз, а обновления и техподдержка продлеваются ежегодно. Без продления сайт работает, но не получает обновлений.

Скорость и кеширование

В Битриксе есть технология «Композитный сайт»: статичная часть страницы отдаётся из кеша мгновенно, а персональные блоки вроде корзины подгружаются следом. Для контентных сайтов и каталогов это заметно ускоряет загрузку без переписывания проекта.

Минусы, о которых говорят разработчики

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

Мне кажется, репутацию платформе испортили не столько её недостатки, сколько тысячи дешёвых проектов. Шаблон купили, допилили на скорую руку, бросили. Следующий разработчик открывает такой код и делает выводы о всей системе. На Laravel тоже можно написать плохо, просто таких проектов на рынке меньше.

Минус Битрикса — наследие старого ядра

В системе одновременно живут старое API с классами вроде CIBlockElement и новое ядро D7 с ORM. Многие модули до сих пор написаны в старом стиле. Разработчику приходится знать оба подхода, а код типовых проектов часто выглядит так, будто его писали в 2010 году.

Производительность на больших каталогах

Инфоблоки удобны, но на каталогах в сотни тысяч товаров со множеством свойств выборки тормозят. Решается это кешем, фасетными индексами и вынесением поиска во внешний сервис вроде Elasticsearch. Проекты с 3–5 млн визитов в месяц показывают, что выдержать нагрузку можно, но архитектуру нужно продумать заранее.

Люди

Самая заметная проблема — кадры, и тут спорить не о чем. Сильные PHP-разработчики часто уходят в Laravel и Symfony, а фронтендеры не хотят возиться с шаблонами компонентов. В итоге на рынке мало людей, которые одинаково хорошо делают и бэкенд, и фронтенд на Битриксе. Обычно получается либо слабый фронтенд, либо слабый бэкенд, и заказчик видит это по срокам и ошибкам.

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

Битрикс или другая платформа

Я сравниваю платформы по тому, что важно бизнесу, а не по красоте кода.

Критерий1С-БитриксWordPress с WooCommerceФреймворк Laravel
Обмен с 1ССтандартный, из коробкиЧерез плагиныПишется под проект
Админка для контент-менеджераПривычна большинствуПростаяДелается под проект
Стоимость лицензииПлатная, продление ежегодноБесплатноБесплатно
Найти подрядчикаЛегкоЛегкоЛегко, но дороже
Гибкость архитектурыОграничена ядромОграниченаПолная

Как отдельное API на Slim снимает проблему кадров

Slim — микрофреймворк на PHP. В нём есть маршрутизация, middleware и работа с HTTP-запросами по стандарту PSR-7, и почти ничего лишнего. Внутри обработчиков мы вызываем ядро Битрикса, а наружу отдаём JSON.

Мы начинали этот подход для мобильных приложений, а потом подключили к тому же API и фронтенд сайта.

Схема простая. Бэкендер пишет и поддерживает API, фронтендер работает только с ним и может вообще не открывать код Битрикса. Каждый занят своим, и искать редкого фуллстека не нужно. То же API потом обслуживает мобильное приложение.

Когда Битрикс не подходит

Битрикс не универсален, и делать вид, что он подходит всем, я не буду. У каждой платформы своя область, где она сильна.

Если продукт — сервис со сложной бизнес-логикой, а не сайт с каталогом, платформа будет мешать. Личные кабинеты с расчётами, маркетплейсы, SaaS лучше писать на фреймворке. Битрикс хорош там, где нужен сайт или магазин, которым управляет контент-менеджер, и обмен с 1С.

Вопросы и ответы

Какие плюсы у 1С-Битрикс?

Каждый контент-менеджер в стране знает, как с ним работать. Это проверенное решение в глазах заказчиков, а проекты без значимой оптимизации выдерживают по 3–5 млн визитов в месяц.

В чём главный минус Битрикса?

Сложно найти фуллстеков на 1С-Битрикс: обычно получается либо недофронт, либо недобэкендер. Мы решаем это отдельным API на Slim.

Обсудить в Telegram Подписаться на @altocodes