Сообщество Joomla стремительно движется к новой эре инноваций - Joomla! 4. Давайте немного приоткроем занавес будущего Joomla и посмотрим, что нас ждет уже в ближайшее время.
Команда Joomla! 4?
На сегодняшний день сформированны 2 группы разработчиков - Joomla! 4 Working Group (J4WG) и Joomla 4 Architecture.
Стоит отметить, что команда была создана в течении 2015 года, часть которой начали свою работу на Joomla 3.5 и на текущий момент продолжают в Joomla 3.6.
Если же посмотреть на разработчиков в целом, то у сообщества есть все шансы получить новую версию системы в ближайшее время, без кардинальных временных сдвигов, что по сути мы наблюдаем сейчас с версией 3.5, которая активно перешла в 3.6.
Трансформации в Joomla! 4
Хотя Joomlа улучшается за счет времени, однако она основана на старой технологии, которой 5, а то и больше лет. Таким образом, Joomla должна переобразоваться, чтобы догнать современные технологии и более гибко реагировать на потребности своих пользователей.
Изменения в Joomla! 4, которые повлияют на разработчика
Как указано в дорожной карте развития Joomla! 4 продолжит эволюцию самой системы, чтобы стать более мощной, но простой в использовании. Кроме того, ее тзменения будут усиливать уникальность, которая отличает Joomla от других СMS.
Приоритет в развитии Joomla! 4 - в один клик обновить ядро, дать возможность совместимости для текущих расширений, при этом разрботчик получает нове инструменты для воплощения своих фантазий.
Ортогональная структура компонентов
Структура Joomla! 4 представляет собой комбинацию вертикальных таких как содержание, пользователи и горизонтальных - рабочий процесс, теги, управление версиями и т.д. будут добавлены автоматически во все части Joomla с возможностьюнастраивания.
Современный CSS-фреймворк
Это хорошая новость для фанатов Bootstrap, так как в Joomla! 4 и последующих версиях будет использоваться самая последняя версия CSS-фреймворка. Очевидно это будет Bootstrap3, однако возможно, что к моменту выхода Joomla! 4 уже будет использоваться Bootstrap4, альфа-версия, которого анонсировалась еще в августе 2015 года, а на текущий момент вышла бета-версия.
Также будет внедрено в JLayout общая библиотека JavaScript, использующая компоненты Bootstrap. Это нововведение поможет уменьшить работу для разработчиков, а расширения Joomla будут работать должным образом на всех шаблонах Joomla. Хотя тут в большей мере зависит еще много от поставщиков шаблонов - клубов, которые для своих шаблонов используют РНР/CSS/JS-фреймворки. Но если же основываться на Joomla-фреймворке при создании шаблонов, то это действительно ускорит процесс разработки с одной стороны и минимизирует количество кода и CSS/JS с другой.
Реализация MVC
Изменения в MVC позволит меньше писать кодя для расширений за счет использования функционала Joomlа. Способ применения MVC в Joomla! 4 будет использовать ортогональную структуру компонентов.
Абстракция
Для поддержки нескольких типов баз данных, будет интегрирован уровень абстракции БД, Doctrine DBAL, который очень похож на JDatabaseQuery. Файловая система также получит уровень абстракции, предоставляемий FlySystem.
использование внешних библиотек в Joomla даст возможность разработчикам сосредоточится на задачах самой системы, с другой стороны преимущество сторонних библиотек в том, что они разработаны и хорошо протестированы людьми со знаниями и опытом в этих областях.
Hypermedia API (Web Services)
Веб-сервисы - это AJAX, мобильные приложения, CLI, интеграция, Open Data и т.д.
Hypermedia API будет добавлено в виде отдельного приложения с использованием родного роутера Joomla. В качестве подачи контента на первом этапе будет добавлена поддержка HAL. Приложение будет интегрироваться с Joomla 3 Legacy MVC, Joomla 3, Joomla 4 Service Layer