YiiFramework Новости Yii 2020, выпуск 3

Sam Dark

Новичок
С прошлого выпуска прошёл месяц, за который в мире много чего успело поменяться. Прежде всего, из-за вируса. Отменились почти все конференции, сошли на нет путешествия, был введён карантин, работа из дома с детьми 24/7 стала обычным делом. Начал изменяться общий ландшафт IT.
Что осталось неизменным, так это потребность в надёжном и удобном фреймворке для разработки и наше стремление выпустить Yii 3. Я рад, что вы поддерживаете нас несмотря на ситуацию.
Будьте здоровы и приятного чтения.
Спасибо!
Yii 2
Вышла версия 2.0.33. Исправлено 22 ошибки, сделано 4 улучшения.
Вышли расширения:
Yii 3
Чтобы лучше понимать картину разработки мы завели доску в Trello.
Новые и переработанные внутренние соглашения:
Новые страницы в руководстве по фреймворку:
Рекомендации к чтению
❤ Спасибо!
Хочу сказать спасибо всем спонсорам и разработчикам, благодаря которым стала возможна разработка Yii 3. Вместе у нас всё получится.
Отдельное спасибо тем, кто помог Yii 3 кодом:
 

Sam Dark

Новичок
Это очень тонкая прослойка над Flysystem второй версии, которая, если что, позволит его заменить на что-то ещё.
 

fixxxer

К.О.
Партнер клуба
Опять Yii::$app сервислокатор, сириосли? :)
Или просто ридми старый?
 

fixxxer

К.О.
Партнер клуба
Это очень тонкая прослойка над Flysystem второй версии, которая, если что, позволит его заменить на что-то ещё.
Не-а, не позволит.
PHP:
use League\Flysystem\FilesystemOperator;

interface FilesystemInterface extends FilesystemOperator
PHP:
final class Filesystem extends LeagueFilesystem
Теперь представим себе, что есть еще некая библиотека Foo, умеющая взаимодействовать с интерфейсами League\Flysystem. Конечно же, будет соблазнительно передавать этой библиотеке инстансы Yii\Filesystem, LSP разрешает.

Если заменить на что-то еще, это все сломается.

Чтобы такого не было, надо не наследоваться, а делеировать (а интерфейс, да, хотя бы и скопипастить).

Сам подобным наследованием злоупотребляю, срезая углы, - но в публичном продукте это чревато.
 
Сверху