Q&A про Yii #2
29 марта 2016
А не кажется ли вам, что самое время подумать о Yii3? Вышел php7 с количеством изменений, достойным нового фрэймворка.
Про Yii 3 мы думаем с самого выхода 2.0. Останавливаться на достигнутом не стоит. Перед ним будет 2.1.
В PHP 7 не так много новых возможностей, действительно полезных для самого фреймворка. Типизация больше приятностей даёт, когда её используешь в приложении. К тому же, типизация возвращаемого значения не поддерживает null
, что делает невозможным, например, возврат null
из Post::findOne(10)
. Что действительно стоило бы использовать из PHP 7 не раздумывая, так это password API и генератор случайных чисел.
Какие недостатки Yii видит основная команда разработчиков?
Идеальных фреймворков не бывает. Недостатки, естественно, видим и их не так уж и мало.
- Нет совместимости с некоторыми PSR.
- Плагин для Composer-а (fxp) хоть и выполняет свою задачу, но также прилично запутывает и замедляет процесс установки.
- Попытка решить проблемы клиентсайда хоть и не совсем провальна и даже нормально работает, но не поспевает за grunt и gulp.
- Ядро фреймворка не отделено должным образом от клиентсайда.
- Некоторые возможности напрашиваются на выделение в отдельные независимые от Yii библиотеки.
Куча разных мелочей, которые либо в планах на 2.1, либо исправляются по ходу дела в 2.0 каждый день.
Комментарии RSS по email OK
Когда будет возобновлена работа над созданными но заброшенными репозиториями yiisoft?
в частности интересует installer и queue.
Когда будет найдена альтернатива вышеупомянутому composer-плагину?
installer и queue создавались не основной командой фреймворка.
queue изначально занимался @creocoder. Сейчас им планировал заняться @kop. Расширение, в принципе, уже работает. Отсутствует документация и поддержка некоторых бэкендов.
installer занимался @pana1990. Изначально был план сделать простое решение, чтобы понять, нужен ли он вообще. В текущем виде инсталлер плюсов по сравнению с Composer не имеет, так что релизить его смысла нет.
Когда будут возобновлены работы зависит от сообщества. Если хотите, можете допилить и послать pull request.
Альтернатив несколько:
Решим к 2.1.
Хотелось бы узнать, когда будет выпущен yii2-mongodb для php7? А то пока там все печально с его поддержкой
Согласно докам на ГитХабе, чтобы перейти на Yii 2.1 нужно будет действительно много переписать, если проект средний или большой. Вам не кажется, что изменения 2.1 нужно выкатывать плавно??
Насчет Yii3... Тут даже страшно думать. Веб не изменился ТАК сильно и не изменится в ближайшее время, все можно делать постепенно! php7, bootstrap4, все можно делать от версии к версии, но не все сразу...
Евгений, а что именно там не так? Проблемы на GitHub перечислены? Pull request-ы открытые какие-либо из них решают?
Ктото, версия 2.1 не будет чем-то прямо совсем новым. Не думаю, что придётся переписывать так же сильно, как пришлось при переходе 1.1 → 2.0. bootstrap 4 уже практически готов. В расширении будет отдельная ветка. Ставить можно будет или 3 или 4, какой нужен...
Ктото
Дело не только в сопутствующих технологиях, дело в архитектуре фреймворка. Например с yii1 -> yii2 многое кардинально изменилось в самом ядре, в самом подходе. Тоже самое будет и с yii3. Скорей всего сделают из фрейморка набор несвязанных компонентов, учтут последний бест практис. Вот, например, чтоб сделать последнее - придется больше половины ядра вообще переписать. А думать о yii3 действительно нужно уже сейчас, т.к. нужно еще успешно конкурировать с остальными фреймворками. И - да, веб меняется "ТАК сильно" каждый день, и не только веб, программирование в целом.
Алекей Sc Че-то вы написали вообще чушь, без обид. Про несвязанные компоненты уже сто раз писали и тут и на хабре и на yiiframework.ru. Про то, что вся поменялось 1=>2 то поменялся синтаксис, все принципы остались.
Sam github.com/yiisoft/yii2/wiki/Ideas-for-2.1 я вам приведу из-за чего много придется переписать (проект средний-большой):
Это проект, которым люди занимаются бесплатно, в свободное от работы время. Какая конкуренция? Если yii3 и выйдет, то лет через 5 минимум. (Для сравнения, разница между первой и второй версиями - 6 лет).
Не так уж и быстро он меняется. Многие технологии 5-10-летней давности и сейчас актуальны.
Sam, насчет mongodb, в php7 выпустили новый драйвер для mongo и текущее расширение с ним не совместимо. В Issue есть эта проблема, но затегирована на версию 2.1 (
Sam
Евгений, 2.1 расширения — это не 2.1 фреймворка.
Denis Alliswell, расширение тоже практически готово. Pull request пилится.
Sam, а где расширение под 4-й бутстрап? Дайте ссылочку пожалуйста!
zabachok, github.com/yiisoft/yii2-bootstrap/pull/125
А когда планируется слияние? Уж очень нужен 4й бутстрап уже.
Начиная с сейчас и заканчивая релизом Bootstrap 4. Как пойдёт, но к релизу будет.
Hi Sam,
Do you think Yii is cute enough? Should Yii perhaps try to be more cute in 2.1?
"cute"? Why should it be "cute"? :)
Seriously speaking, I think 2.0 is good enough for real projects but, of course, it could be better. That's why 2.1.
Александр, ссылка на этот пост ломает rss, т.к. в ссылке содержится &
Владимир, поправил.
А планируется реализация фреймворка в phar архиве. Было вроде обещано еще в начале первой версии. зы: Давно не следил за новостями.
Сергей, у нас такой цели сейчас нет, но проблемы, мешающие это сделать, почти все устранены.
Ожидаемая дата релиза 2.1?
Кстати, ссылка на сайт комментатора не работает, если указан протокол https.
Эт вы явно погорячились )) behavior очень удобно использовать как mixin со своими (private) методами и свойствами, + есть наследование. Я честно говоря слабо представляю как это все можно загнать в trait, но что-то мне подсказывает ничего хорошего из этого не получится. Sum, можешь поведать как вы себе представляете новую замену behavior.
LAV45, да уже переиначили планы на 2.1. Меньше изменений будет.
Так а когда там 2.1? =)
Илья, после нового сайта и 2.0.13.