Size: a a a

2020 May 28

А

Антон in PHP
Валентин Удальцов
да даже шире — конкретный пример кода на Gist, где оправдано использование трейтов
Популярный в чате симфони гист про события в сущности сгодится?
источник

VM

Volodymyr Melko in PHP
interface Loggable {
   public function getLogData(): array;
}

реализация вполне может быть в трейте
источник

MM

Maksim Masiukevich in PHP
зачем она в трейте?)
источник

VM

Volodymyr Melko in PHP
затем чтобы во всех логируемых объектах не писать однотипный код
источник

ВУ

Валентин Удальцов... in PHP
Антон
Популярный в чате симфони гист про события в сущности сгодится?
скинь, плиз, я не помню)
источник

MM

Maksim Masiukevich in PHP
и зачем ваще этот интерфейс?) что мешает херовине, которая его реализует, иметь логгер в зависимостях?
источник

MM

Maksim Masiukevich in PHP
не, эт плохой пример.
источник

A

Aleksandr Khristenko in PHP
Maksim Masiukevich
прям без стёба) я не понимаю что за "дефолтные реализации", в когторых так помогают трейты
Какой-нибудь интерфейс Foldable, с методами foldr, foldl, foldr1 и тд.
По они вполне себе выразимы через друг друга. Т.е. в трейте мы реализуем их друг через друга. В классе подключем трейт и переопределяем реализацию одного из них.
источник

ВУ

Валентин Удальцов... in PHP
Volodymyr Melko
interface Loggable {
   public function getLogData(): array;
}

реализация вполне может быть в трейте
а как она может быть однотипной? логи-то разные всегда)
источник

MM

Maksim Masiukevich in PHP
Aleksandr Khristenko
Какой-нибудь интерфейс Foldable, с методами foldr, foldl, foldr1 и тд.
По они вполне себе выразимы через друг друга. Т.е. в трейте мы реализуем их друг через друга. В классе подключем трейт и переопределяем реализацию одного из них.
мне б с кодом пример. Пока звучит, как пара отдельных функций
источник

VM

Volodymyr Melko in PHP
Валентин Удальцов
а как она может быть однотипной? логи-то разные всегда)
у кого как
источник

MM

Maksim Masiukevich in PHP
отдавать наверх данные, которые надо залогать - фу
оч херовый пример
источник

AT

Andre Teros in PHP
Валентин Удальцов
скинь, плиз, я не помню)
источник

VM

Volodymyr Melko in PHP
Maksim Masiukevich
отдавать наверх данные, которые надо залогать - фу
оч херовый пример
у меня логаются команды\ивенты, но не все, а те которые с интерфейсом
источник

VM

Volodymyr Melko in PHP
зачем мне прокидывать в каждый из них логгер? =)
источник

MM

Maksim Masiukevich in PHP
Volodymyr Melko
у меня логаются команды\ивенты, но не все, а те которые с интерфейсом
сделай просто интерфейс, как маркер и логай помеченные) зачем те ваще метод какой-то?)
источник

VM

Volodymyr Melko in PHP
окей, маркерный интерфейс. как сформировать лог?
источник

MM

Maksim Masiukevich in PHP
$this->logger->debug($message)
источник

A

Aleksandr Khristenko in PHP
Maksim Masiukevich
мне б с кодом пример. Пока звучит, как пара отдельных функций
Просто сложно придумать адекватный пример =\
источник

MM

Maksim Masiukevich in PHP
не благодари)
источник