Уровень совместимости с Joomla 4 в версии 3.8
Слой совместимости Joomla 4 в версии 3.8


Первый первый слой совместимости для Joomla 4 в Joomla 3.8

С выходом Joomla 3.8 был выпущен первый слой совместимости для Joomla 4. Что содержит этот слой? Зачем нужен такой слой? На эти вопросы будут даны ответы в этой статье.

Пространства имен (Namespaces)

Большим изменением в Joomla 4 являются пространства имен, функция, которая существует со времен PHP 5.3.0, выпущенного в 2009 году. Все сообщество PHP полностью адаптировалось к ней, и Joomla не хочет отставать.

В Joomla 4.0 основная архитектура будет поддерживать и в значительной степени использовать PHP код с пространствами имен (namespace). Это относится как к основным библиотекам, так и к расширениям.

Зачем нужен миграционный слой для Joomla 4.

Это означает, что расширение для Joomla 3 будет работать на Joomla 4, а расширение с поддержкой пространства имен Joomla 4 - на Joomla 3.9. Чтобы достичь этого, было решено идти шаг за шагом, чтобы уменьшить риск ошибок и дать разработчикам расширений достаточно времени для адаптации. Первым шагом было создание пространства имен для папки libraries в Joomla 3.8. Это означает, что такие классы как JForm теперь имеют имя класса \Joomla\CMS\Form\Form. Чтобы сохранить обратную совместимость, старые имена классов все еще работают. Это и есть слой миграции, о котором было сказано.

Классы, которые все еще существуют в папках /libraries/cms, /libraries/joomla и /libraries/legacy, в основном устарели или удалены в Joomla 4. Есть одно исключение - пакет файловой системы. К релизу 3.8.0 было недостаточно времени для его преобразования. Это должно быть сделано в версии 3.9.

Что делать с новыми расширениями для Joomla?

Если вы планируете создать новое расширение для Joomla 3, то вам все равно придется делать это старым способом. Вы можете использовать классы библиотек с пространством имен, но расширение, в первую очередь компонент, все еще должно быть БЕЗ пространства имен. Большинство функций Joomla 4 будет перенесено в 3.9.0, так как 3.8 сейчас находится в режиме исправления ошибок.

Текущее состояние Joomla 3.9

Пока не начат перенос функций из Joomla 4 в 3.9, так как есть некоторые проблемы, которые необходимо исправить в версии 4, прежде чем начинать разработку под 3.9. Это означает, что пока не рекомендуется работать с Joomla 3.9.

Информационные источники Joomla.

Полная дорожная карта Joomla 4 опубликована на сайте разработчиков. Если вы хотите взглянуть на актуальный код, то можете протестировать ночные сборки.

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

Перевод с английского официальной документации Joomla:
developer.joomla.org

Заберите ссылку на статью к себе, чтобы потом легко её найти!
Раз уж досюда дочитали, то может может есть желание рассказать об этом месте своим друзьям, знакомым и просто мимо проходящим?
Не надо себя сдерживать! ;)

Старт! Горячий старт на просторы интернета
Старт! Горячий старт на просторы интернета
Старт! Меню