Новое ядро «D7» (Bitrix Framework) — это переработанная архитектура 1С-Битрикс, которая приходит на смену устаревшему API на основе глобальных функций и классов типа CIBlock, CUser и т.д.
Ключевые концепции D7
Модули в D7 организованы как пространства имён PHP: \Bitrix\Main, \Bitrix\Iblock, \Bitrix\Sale и т.д. Каждый модуль — отдельный неймспейс.
Автозагрузка классов — D7 использует PSR-совместимую автозагрузку. Классы не нужно подключать вручную через require_once.
ORM — D7 включает собственный ORM на основе DataManager. Вместо прямых SQL-запросов и $DB->Query() используются классы-наследники \Bitrix\Main\Entity\DataManager.
Жизненный цикл запроса в D7:
Loader::requireModule()— загрузка модуля- Инициализация Application
- Роутинг и диспетчеризация
- Выполнение контроллера
- Рендер ответа
Отличия от старого API
| Старое ядро | D7 |
|-------------|-----|
| CUser::GetByID() | \Bitrix\Main\UserTable::getById() |
| $DB->Query() | ORM / \Bitrix\Main\Application::getConnection() |
| Глобальные функции | Статические методы классов |
| AddEventHandler() | EventManager::getInstance()->addEventHandler() |
D7 и старое ядро сосуществуют в одном проекте — миграция постепенная, по модулям.
