Если вы еще не знакомы с предыдущей версией фреймворка, то можете это сделать в обзоре Yii. Yii 3 - это второе по масштабности переделывание фреймворка, версия Yii2 также значительно отличается от Yii1.
Как сильно изменится Yii
На данный момент есть только alpha версия Yii3, большая часть кода в которой находится в разработке. Содержимое кода и структура фреймворка меняется, поэтому не стоит начинать разработку на alpha, а стоит дождаться рабочего релиза. Однако уже сейчас Yii3 можно попробовать, установив демо версию.
Что добавлено нового в Yii3?
Разделение на пакеты
Архитектура фреймворка разбита на отдельные пакеты, что позволит при разработке приложения подключать только необходимые. Так как все пакеты будут выпущены отдельно, то это поможет выстраивать гибкие приложения и разработчики смогут проводить более частые обновления.
Независимый JavaScript
Если в Yii2 исходный код всего фреймворка базировался на встроенном jQuery, то в Yii3 было решено отказаться от этого в пользу независимого JavaScript. Это упростит использование других библиотек и фреймворков для frontend разработчиков. jQuery при необходимости можно будет подключить самостоятельно или отдельным пакетом.
PSR совместимость
Yii3 будет совместим с PSR и следовать рекомендациям PHP-FIG при разработке логирования, кэша, DI и тому подобного.
Автозагрузка
Пользовательский автозагрузчик класса PHP был удален для реализации Composer PSR-4. Чтобы Yii3 распознал классы, нужно явно указать свое пространство имен в composer.json.
Конфигурация приложения
Yii2 использует все настройки приложения в одном файле config/main.php что может приводить к увеличению размеров файла и сложности понимания его содержимого. В Yii3 каждый подключенный пакет будет иметь свою конфигурацию, которую при необходимости можно переопределить.
Пакеты Yii3
В Yii3 представлены следующие пакеты:
Фреймворк:
- yiisoft/yii-core - Ядро фреймворка
- yiisoft/yii-console - Расширение Console
- yiisoft/yii-web - Web-расширение
- yiisoft/yii-rest - REST-расширение
Шаблон проекта Yii и базового приложения:
- yiisoft/yii-project-template - Шаблон Yii Framework Project
- yiisoft/yii-base-web - База веб-приложений Yii Framework
- yiisoft/yii-base-api - База приложений API Yii Framework
- yiisoft/yii-base-cli - Yii Framework CLI Application Base
Виджеты и обертки:
- yiisoft/yii-bootstrap3 - Yii Framework Bootstrap3 Расширение
- yiisoft/yii-bootstrap4 - Yii Framework Bootstrap4 Расширение
- yiisoft/yii-dataview - Расширение отображения данных Yii Framework
- yiisoft/yii-masked-input - Расширение виджета ввода маски Yii Framework
Инструменты:
- yiisoft/yii-debug - Расширение панели отладки Yii Framework
- yiisoft/yii-gii - Расширение генератора кода Yii Framework
- yiisoft/yii-dev - Набор инструментов для Yii Framework
Разное:
- yiisoft/yii-jquery - Yii Framework Расширение jQuery
- yiisoft/yii-captcha - Расширение Yii Framework CAPTCHA
- yiisoft/yii-swiftmailer - Расширение Yii Framework Swift Mailer
- yiisoft/yii-twig - Расширение ветки Yii Framework
- yiisoft/yii-http-client - Расширение HTTP-клиента Yii Framework
- yiisoft/yii-auth-client - Расширение внешней аутентификации Yii Framework
Библиотеки Yii:
- yiisoft/log - Yii Logging Library
- yiisoft/di - Библиотека внедрения зависимостей Yii
- yiisoft/cache - Yii Caching Library
- yiisoft/db - Библиотека абстракций базы данных Yii
- yiisoft/active-record - Yii Active Record Library
- yiisoft/rbac - Библиотека управления доступом на основе ролей Yii
- yiisoft/view - Библиотека рендеринга Yii View
- yiisoft/mutex - Библиотека Yii Mutex
Драйверы БД:
- yiisoft/db-mysql -Поддержка MySQL для Yii
- yiisoft/db-mssql -Поддержка MSSQL для Yii
- yiisoft/db-pgsql - Поддержка PostgreSQL для Yii
- yiisoft/db-sqlite - Поддержка SQLite для Yii
- yiisoft/db-oracle - Поддержка базы данных Oracle для Yii
Драйверы NoSQL DB:
- yiisoft/db-sphinx - Yii Framework Sphinx Extension
- yiisoft/db-redis - Расширение Yii Framework Redis
- yiisoft/db-mongodb - Расширение Yii Framework MongoDB
- yiisoft/db-elasticsearch - Расширение Yii Framework ElasticSearch
Когда выйдет Yii3?
Точная дата выхода Yii3 неизвестна. Можно лишь предполагать, что фреймворк выйдет не раньше зимы 2019 года.
Статья по теме: интервью с разработчиком Yii Александром Макаровым.
Мы пользователи этого фреймворка ещё начиная с 1 версии начали большую часть этих нововведений внедрять и делать cms.
Перешел с хабра
Ну уже хоть что-то. Посмотрим как оно будет.