Size: a a a

2020 September 29

ДХ

Д Холmatoff in PHP
Shurick
и все )
в конце Латинские
источник

S

Shurick in PHP
Д Холmatoff
вот эту надо было
=?UTF-8?B?RndkOiDQntGE0LjRhtC40LDQu9GM0L3QvtC1INGB0L7RgtGA0YPQtNC90LjRh9C10YHRgg==?= во с Global Europe
тут какойто формат, так что вырезай base64 вставки
источник

ДХ

Д Холmatoff in PHP
Д Холmatoff
вот же $subjects_arr = explode("?=", $str);
вот и вырезал
источник

S

Shurick in PHP
источник

S

Shurick in PHP
источник
2020 September 30

BT

Bohdan Turchyk in PHP
Переслано от Alisa Kruglova
1 октября в 19 Валентин Удальцов (автор канала Пых) и Леонид Корсаков (PHPKazan) - порефакторят популярный опенсорс-проект в эфире. А мы посмотрим, какие инструменты они применят, в чем совпадут, в чем нет, и что может пойти не так в их подходах.

🎙 Ведущие - Александр Макаров (Yii) и Валентин Назаров (Skyeng).

💡 Лицензии на PhpStorm авторам 5 вопросов, заданных голосом.

🐘 Фирменный пхп-слон за лучшую зрительскую историю о рефакторинге!

Читай подробнее о лайве, ставь напоминалку и ищи фото того самого слона тут
YouTube
Рефакторим c Александром Макаровым, Валентином Удальцовым, Валентином Назаровым, Леонидом Корсаковым
Стрим, на котором ребята из Yii, Skyeng, каналов Пых и PHPKazan посмотрят на код популярного гитхаб-проекта, найдут, что там порефакторить (и порефакторят).

00:22 - Интро от ведущих - Александра Макарова (Yii) и Валентина Назарова (Skyeng)
04:32 - В эфир приходит Леонид Корсаков (PHPKazan): что хочет отрефакторить в проекте?
14:25 - Присоединяется Валентин Удальцов (автор канала Пых): по какому плану пойдет?
25:05 - У нас теперь есть классный сайт https://phpcommunity.ru/ с сообществами / чатами / митапами России, Беларуси и Украины по пхп
27:50 - Чем рефакторинг кода отличается от рефакторинга проекта? Обсуждают Александр и Валентин Назаров
40:07 - Вопросы из чата: переписывание с нуля - тоже рефакторинг?
46:36 - Рефакторинг без тестов. А так можно?
49:13 - Есть ли свет в конце рефакторинга или процесс бесконечен?
55:10 - Что там у ребят: в эфир возвращается Леонид и показывает свои решения
1:08:46 - Подключаем Валентина Удальцова с его хардкорным подходом
1:30:30 - Обсуждаем решения - что получилось, что…
источник

VT

Vadym Trofymenko in PHP
Коллеги, кто-то может объяснить, почему в 7.4 стал легальным этот код?
источник

i

invariance in PHP
источник

VT

Vadym Trofymenko in PHP
Благодарю-с
источник

АЯ

Андрей Ява in PHP
Vadym Trofymenko
Коллеги, кто-то может объяснить, почему в 7.4 стал легальным этот код?
Входящие параметры можно расширять, результат можно конкретизировать.
источник

ВУ

Валентин Удальцов... in PHP
Принцип подстановки Барбары Лисков изучай)
источник

VT

Vadym Trofymenko in PHP
Валентин Удальцов
Принцип подстановки Барбары Лисков изучай)
Я понимал его суть в следующем: наследуя метод, в параметрах которого указан родительский класс, я должен иметь возможность использовать реализацию этого класса.А вот про то, что можно так же, только наоборот, не знал — ведь, получается, дочерний класс != родительскому. Или шо)
источник

i

invariance in PHP
Если не ошибаюсь, ты понимал суть ковариантности. А на скрине выше пример контрвариантности
источник

i

invariance in PHP
@fes0r пофикси, если я не прав)
источник

ВУ

Валентин Удальцов... in PHP
Vadym Trofymenko
Я понимал его суть в следующем: наследуя метод, в параметрах которого указан родительский класс, я должен иметь возможность использовать реализацию этого класса.А вот про то, что можно так же, только наоборот, не знал — ведь, получается, дочерний класс != родительскому. Или шо)
Если подкласс B готов обработать более широкий спектр значений аргументов, то это не проблема для того, кто его использует как A.
источник

ВУ

Валентин Удальцов... in PHP
А вот если он вернёт что-то, что клиент класса не ожидает, тогда это проблема, потому что клиент не готов с этим работать. Поэтому тип возвращаемого значения можно только сохранять или уточнять.
источник

АС

Альберт Степанцев... in PHP
Достаточно буквального понимания слова extends, чтобы понять смысл
источник

VT

Vadym Trofymenko in PHP
Да, понял, спасибо большое!
источник

DP

Dmitri Ponomarjov in PHP
За объяснение спасибо, но я всё равно не понял.
Я поменял классы на интерфейсы, чтобы было нагляднее.
Из вики принцип подстановки Лисков: если S является подтипом T, тогда объекты типа T в программе могут быть замещены объектами типа S без каких-либо изменений желательных свойств этой программы.
В данном случае наследующий класс заменяет в методе тип аргумента на интерфейс parentType, который формально не реализует все методы интерфейса childType, как в родителе. Если этот объект типа parentType далее попадёт из метода во внешнее окружение, ожидающее методы childType, то получится проблема.
Разве это формально не нарушает тот самый принцип подстановки?
источник

DP

Dmitri Ponomarjov in PHP
Переслано от Dmitri Ponomarjov
источник