Comments 40
Вот я не понимаю почему нельзя было добавить данный тип с самого начала, при внедрении типизации? Либо я один такой дурак и не мог грамотно реализовать паттерн repository без mixed?
А зачем в репозитории mixed
? Репозиторий либо конкретную сущность возвращает, либо набор, т.е. array
.
mixed — явно указано, что здесь mixed.
предлагаем в следующей версии вместо пустой строки писать «this is empty line, nothing here»
что бы точно быть уверенным в том, что здесь должна быть именно пустая строка, а не что-то важное, что ты просто забыл написать или поленился
/sarcasm/
Хорошая практика именно так писать в пустых try-catch.
По поводу очередей на Yii2 — вроде, была инфа, что они пока не особо юзабельны, мол, пользуйтесь другими (сторонними) расширениям. Сейчас ситуация изменилась?
<irony>
Мир перевернулся в тот самый момент, когда SamDark решил поговорить о хороших практиках. Осталось услышать доклад от разрабов битрикса о каких-нибудь SOLID, SRP и прочих страшных штуках, и можно считать, что в жизни видел всё +))))
</irony>
Спорное улучшение. Как и nullable, поскольку ослабляет типизацию.
Ослабляет типизацию, а также позволяет тут и там нарушать контракты, которые по идее должны быть заложены в интерфейсах...
теперь он только будет явно указываться.
Одно дело принять правило: везде используем тайпхинтинг и выпиливать места без типизации, где только возможно, а где невозможно пересматривать контракты.
И другое дело принять правило, но либо с оговоркой: не используем mixed, либо оставить лазейку лентяям.
Я за первый вариант без оговорок и двусмысленностей, как более строгий. И поэтому против mixed.
Но оно не имеет отношения к тому, что здесь обсуждается.
string[]|string
, например.Это позволило бы сильно снизить вообще необходимость такого типа как
mixed
.А сейчас это и так приходится делать вручную через foreach
или какой-нибудь Webmozart\Assert
.
Как зачем? Чтобы не прилетало что попало. Целостность данных, все дела.
Лучше бы static
typehint добавили.
При возникновении ошибки во время вызовов json_encode()/json_decode() предлагается бросать ошибку класса E_WARNING
Шёл 2017-й год, а они всё бросали ворнинги.
в 2017 warning-и являются исключениями
В 7 можно его впоймать через try catch, видимо потому такое предложение
PHP-Дайджест № 113 – свежие новости, материалы и инструменты (16 – 30 июля 2017)