- Yii 1.x стартовал с 5.2.
- Yii 2.0 требует 5.4.
- Заметно быстрее.
- Лучше работает с объектами.
- Меньше кушает памяти.
- Практически не течёт.
Никуда не собирается деваться.
SOA частенько превращает отладку в ад из за обилия слоёв и событий.
Философия Yii
- Только необходимая сложность.
- API и юзабилити кода прежде всего.
- Документировать всё.
- Обратная совместимость и поддержка — это важно.
Prado 1.0 (2004)
- Qiang Xue, релиз в июне 2004.
- Вдохновлялся Apache Tapestry, Borland Delphi и Microsoft ASP.NET.
- Финалист Zend gophp5.
Prado 2.0 (2005)
- Wei Zhuo помог с i18n и l10n.
- После релиза принято решение переписать проект.
Prado 3.0 (2006)
- Вдохновлялся Microsoft ASP.NET 2.0.
- Последняя версия с большими улучшениями.
- Жива и поддерживается до сих пор.
Yii 1.0 (2006 — 2008)
- Qiang аносирует альфу Yii.
- Большинство фич из Prado: ActiveRecord, i18n, l10n и так далее.
- Вдохновлялись RoR, symfony1, Joomla.
- Быстрее остальных фреймворков.
- Быстрый рост сообщества.
yiiframework.ru
- Запущен в 2009.
- В него плавно перетекла часть сообщества code-igniter.ru.
Yii 1.1 (2010)
- Построитель форм, реляционные запросы AR, готовый каркас для unit-тестов и многое другое.
- Я присодинился к команде.
- Релизнут новый сайт.
- Первые книги.
Yii 1.2 (2010)
- Обновить 1.1.
- Оставить совместимость с 5.2 и 5.3.
- Так и не вышел.
Yii cookbook (2011 — 2013)
- Моя книга.
- Русская и английская версии.
- PACKT.
- Вышло почти отлично (если бы не сюрпризы от PACKT после).
2012 — 2013
- Carsten Brandt, @CeBe присоединился к команде в 2012.
- Paul Klimov присоединился к команде в 2013.
- GitHub.
- Ещё книги.
Yii 2.0 (2012 — ...)
- Разрабатывался в приватном репозитории до 2013.
- Релизнут в 2014.
- В 2015 к команде присоединился Дмитрий Науменко, @SilverFire.
- В 2016 разделены релизы расширений и фреймворка.
- В том же году к нам присоединился Boudewijn Vahrmeijer, @dynasource.
- В 2017 к нам присоединился Алексей Рогачев, @arogachev.
Qiang покинул проект летом 2015-го
Этого не замечали около 6 месяцев и это очень хорошо.
Yii 2.0
- PHP 5.4.
- Неплохо сбалансирован.
- Покрывает весь традиционный веб.
- Хорошо упрощает создание REST API.
- Хорошие инструменты и инфраструктура.
- Менее слоист, быстр.
Взяли слишком много всего сразу
И засунули слишком много в ядро.
- jQuery.
- PJAX.
- CAPTCHA.
- Masked input.
- Остальной клиентсайд.
fxp composer plugin
Попил много крови, но вроде стабилизировался.
- Практически не бажит.
- Усложняет установку.
- Медленный.
Не использовали многие PSR в разработке
Их приняли, а у нас обратная совместимость.
MVC
- Нельзя без него (роутинг).
- Назвали класс "Model".
Облегчение core
- asset-ы.
- Клиентсайд?
- Устаревшие бекенды кеша.
- То, что в ядре не нужно.
Зачистка
- Убить @deprecated.
- Убрать polyfill-ы, которые не нужны для PHP 7.1.
- Убрать всё для HHVM.
change() для миграций
Не надо будет писать down()
.
Конфигуратор
Компонент или библиотека для работы с конфигурациями.
Больше атомарных операций
Возможно, новые шаблоны приложений
Абстракция над intl
Возможно, используем polyfill Symfony.
asset-packagist по умолчанию
@hiqsol, @SilverFire и сообщество сделали https://asset-packagist.org/.
Альтернатива fxp composer plugin, значительно быстрее.
Документация
- Больше обучения.
- Больше лучших практик.
Части вынесены в отдельные проекты и реализованы
- Админка и поиск для wiki.
- Комменты для документации.
- Рейтинги для комментов, wiki и расширений.
- Рейтинги пользователей.
- Заменить старый форум.
- Расширения.
- Улучшения дизайна.
- EOL, только безопасность и PHP 7.
- 1.1.19.
- Революции хочется избежать.
- Пилим отдельные библиотеки (роутер, контейнер DI, коллекции).
- Исправить именование.
- Ещё больше PSR.
- Отвязать роутинг от MVC.
Возможно, часть из этого удастся ввести в 2.x без революций.
Время вопросов!
Что бы вы хотели увидеть в 3.0?