Пост ненависти или впечатления от Битрикса

Добрый день, уважаемые читатели и случайные посетители данного блога. На данный момент уже кучу времени я занят над разработкой нового и оригинального сервиса, который принесет миллионы который в теории может перерасти в популярный проект, так что времени на блог у меня совсем мало. Тем не менее по воле случая мне пришлось иметь дело с одной жуткой системой, имя которой 1с-Битрикс, о которой я и попробую выразить свое субъективное, полное ненависти и баттхерта мнение

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

Для начала вкратце распишу свою задачу — создание интернет-магазина электроники с кошеным дизайном и интеграцией с порождением ада — 1С. И если бы не халявно добытая редакция «Малый бизнес», то я с легкостью убедил бы заказчиков создать интернет-магазин на OpenCart. Но увы, придется работать с тем, что есть.

Стадия 1 — Подготовка

— Где можно оправданно использовать Битрикс?
— В анекдотах.

Для начала нужно скачать и установить данное решение. Здесь все просто — идем на сайт битрикса и качаем нужную редакцию.

Снимок

Итак, имеем 36 тысяч файлов. С установкой проблем не возникает, получаем интернет-магазин с «адаптивной версткой».

Стадия 2 — Взгляд изнутри

Будем считать, что с установкой все справились и получили демо-магазин одежды на своем локальном сервере. Давайте немного глянем внутрь, с чем же придется иметь дело. Первым делом идем в точку входа — index.php в корне нашего сайтика

 

Я убежден, что логика, представления и данные в Битриксе разделены самым разумным для задач CMS образом.

 

В этот самый момент я полюбил шаблонизаторы

 

Ну да, все понятно, логично и отделено. И да, верстка не смешана с кодом, а короткие теги — это тоже кошерно и современно. Давайте копнем немного глубже и посмотрим, что происходит в их хваленом фреймворке:

Начало неплохое

Немного дальше:

Для справки — смесь  namespace и глобальных переменных — почти по всех файлах ядра. Так же полно абсолютно бесполезных методов для получения переменных из $_SERVER

Вопрос — почему тогда в index.php в корне сайта используется

И в чем тогда смысл плодить непонятные сущности, которые только замедлят обработку и не сделают ничего полезного. В общем странно

Стадия 3 — Использование демо-версии с готовым интернет-магазином

Давайте  отвлечемся от неоптимального кода и немного поиспользуем сам магазин. Надо сказать, что режим правки в принципе удобен, но какой ценой — мы правим файлы, а не записи в базе данных. Возьмем раздел «О нас» (в корне сайта папка about).

Что очень огорчило — в бесплатном WordPress меню мы создаем в админке перетаскиванием, это очень удобно. Но в битриксе ценой 25000 рублей, мы вписываем пункты меню вручную.

Мегасовременный механизм создания меню

Скорось битрикса — это отдельный разговор. В то время как все проекты на локальном веб-сервере не вызывают у меня нагрузки как таковой, и время генерации страниц редко превосходит 0,1 секунды без использования кэша, битрикс умудряется генерировать страницы в районе 2-6 секунд. Все происходит из-за того, что собственно все основано на инфоблоках. Т.е. мы создаем к примеру новость с определенными свойствами и т.д., и получаем структуру правильную с точки зрения теории баз данных. Вроде бы все хорошо, только при использовании такой структуры инфоблоков и хранения элементов инфоблоков в одной таблице, так же как и их свойств, мы получаем на выходе такую кашу на sql-сервере:

Счетчик просмотров лежит в одной таблице с записями, что убивает возможность кеширования запросов без допиливания напильником.

Итоги моего первого впечатления от Битрикса — CMS с прекрасными маркетологами и не очень внятными разработчиками. Качество кода и скорость его выполнения на веб-сервере, который не настраивали специально под данную cms, мягко говоря плохи.  Пока я не увидел серьезных причин написания проекта на данной платформе, а не на Symfony к примеру или в случае интернет-магазина, на OpenCart.

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

Но нет, оказывается шаблон применяется в настройках сайта:
Снимок3

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

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

Теги:

Добавить комментарий

Войти с помощью: 

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

  • Оставьте первый комментарий - автор старался

Вход на сайт
Разделы
Метки
wordpress статьи расширение функционала php бред конкурс бесполезная информация халява скрипты это Россия налоги лирика баян комментарии администрирование