
Итак, рассмотрим более подробно новинку. После 14 версий prestashop 1.6.0.х (последняя выпущенная стабильная версия prestashop 1.6.0.14) новая версия меняет нумерацию на prestashop 1.6.1.х. (логически начиная с prestashop 1.6.1.0). Такой переход объясняется изменением стандарта и структуры движка prestashop под общую стандартизацию PHP OpenSource.
Для обычных пользователей легкие изменения коснулись дизайна только административной части при входе:
И непосредственно в самой панели:
Появился уже упоминаемый здесь персонаж Престон.
Для разработчиков в новой версии произошли большие изменения. Начиная с prestashop 1.6.1.0 и в последующих версиях за ней, будет осуществляться плавный переход с текущего стандарта кодировки на новый стандарт PSR-2. До этого момента PrestaShop имеет свой собственный стандарт кодировки основанный на PSR-1 с несколькими изменениями.
Гораздо большее изменение в новой версии коснулось архитектуры prestashop. Объясняется это намерением ввести “захватывающие новые инструменты в кодовой базе, которые разработаны, чтобы помочь написать больше модульного, тестируемого кода”. Как объясняют разработчики, чтобы проект был прочным его необходимо тестировать (unit test). Чтобы его тестировать – код должен быть модульным. Для написания модульного кода потребуются новые инструменты. Поддержка этих инструментов будет осуществляться, начиная с новой архитектуры.
Кроме изменения архитектуры, команда будет работать по следующему плану:
– адаптация к нормам кодировки PSR-2
– переключение на версию PHP 5.4
– переключение на менеджер (composer) зависимого управления.
Изменение архитектуры в новой версии означает добавление новых директорий:
1 2 3 4 5 6 |
PrestaShop/ |-- Core/ | |-- Foundation/ | L-- Business/ |-- Adapter/ L-- (Прежняя часть) |
В папке Core должен находиться понятно обозначенный код классов тестирования (unit test), также код должен быть модульным (что это такое, смотрите более подробно в нижних ссылках).
В папке Adapter должен находиться код, который служит мостом между Core и прежней частью. Таким образом, вызов кода из папки Core будет происходить только через Adapter.
Более подробно об изменениях кода вы можете узнать, перейдя по этим ссылкам здесь и здесь.