Для систематизации активных проектов, а также для быстрого старта новых в недрах компании был разработан шаблон-заготовка, содержащий много полезностей для эффективной работы:
Что проект может предложить искушенным битрикс-девелоперам:
"Безопасная" структура
Конфиги, гит-директория, вендорные файлы находятся аж на 2(!) уровня выше веб-директорий.
"Готовность" к многосайтовости.
Зачастую (особенно, когда гит инициализируют в корневой веб-директории) добавление второго сайта под версионный контроль становится непростой (и внезапной) задачей. В нашем случае эта проблема решена на архитектурном уровне. Проект изначально стартует в структуре, подразумаевающей наличие нескольких сайтов.
Композер "из коробки".
Помимо очевидной автозагрузки, и подключения сторонних библиотек общего назначения, также становится возможна установка Битрикс-модулей из Packagist и публичных/приватных репозиториев (благодаря пакету composer installers)
Данный пакет позволяет снизить количество копипасты файлов шаблонов при создании и наследовании компонентов, а также более явно разделить слои контроллера и отображения (Иными словами использовать Bitrix API в шаблоне становится намного сложнее).
Огромные возможности по работе с данными "из коробки" и простой механизм расширения.
Работа с клиентской частью в Битрикс, мягко говоря, немного отстает от современных реалий веб разработки. Поэтому управление фронтом решено было делегировать более подходящему инструменту.
Который как следует из названия является настройкой над Вебпаком.
Он позволяет относительно легко настроить работу с актуальным стеком технологий.
В нашем случае это:
6 Редакция Javascript (ES6)
VueJS для "сложного-богатого" фронтенда
SCSS и БЭМ для организации работы со стилями
Версионирование и деплой.
Чтобы релизить как можно чаще и быть уверенным, что все будет пернесено, собрано, установлено как надо, используется утилита для автоматизированного деплоя https://deployer.org/
При использовании системы контроля версий также крайне желательно придерживаться некоторых правил, чтобы не замусорить проект и быть уверенным в коде, что находится на "боевом окружении"
у меня всегда только один вопрос - "а нахрена?") Поясню.
В 2014-м году, мы делали сайтец, все дофига быстро, данные на странице динамические где нужно (аяксы или пуш/пуллы), а сайт сделан за пару недель с нуля. Не требуется никаких билдов, сборок, зависимостей, дорогих разработчиков - два битриксовых "фуллстека". Сайт грузится за 0.9 секунды. Другой пример. В 2016-м году, делали нечто, что потом начали люди называть SPA - но за счёт аяксов, которые грузят что нужно. При этом сохраняется структура страниц на сервере, и нет и не было проблем с индексацией. Опять же, никаких зависимостей, дорогих разработчиков (делал один человек за 10 дней), сайт грузится за 0.7 секунды, потом "переходы по страницам" происходят за примерно 0.4 секунды.
И вот сейчас, 2024-й год, нужно сделать сайт. Нанимаем фронтов-колдунов, бэкендеров-хренендеров, каждый по месяцу возится над своей частью, потом они пытаются все синхронизировать, не билдятся билды, не грузятся зависимости, мелкие правки - через билды, любой чих затягивается на сутки. В итоге миллионы зависимостей, много дорогих разработчиков, сложные технологии. Сайт грузится 0.8 секунд, "переходы" - 0.6 секунд. Вопрос - на кой хрен такой прогресс?)) Стало дольше, дороже, сложнее, ненадежнее.
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».