Size: a a a

2020 June 19

ВС

Владислав Субботин... in phpGeeksJunior
Суди сам: ты подключаешь трейт в один, второй, третий класс. Меняя что-то в трейте, ты меняешь все классы, где трейт подключен. То есть, это создаёт side-effect'ы и нарушает принцип открытости-закрытости.
источник

АЯ

Андрей Ява in phpGeeksJunior
Владислав Субботин
То есть, psr стандарты, прежде всего, для конечного пользователя (того, кто юзает пхп), а не для разработчиков языка.
стандарты были придуманы десятком лет позже языка, как-то так.
источник

ВС

Владислав Субботин... in phpGeeksJunior
Андрей Ява
стандарты были придуманы десятком лет позже языка, как-то так.
Да и ООП тоже появился позже )
источник

ВС

Владислав Субботин... in phpGeeksJunior
В языке
источник

АЯ

Андрей Ява in phpGeeksJunior
Владислав Субботин
На трейты стоит смотреть с большой долей подозрения и скепсиса, на самом деле. Ни для первого случая, ни для второго их использовать не круто. Но иногда бывает очень к месту, чтобы не пилить 100500 классов и не делать 100500 extends
если хорошо подумать, то трейты не нужны.
нет такой ситуации которую нельзя решить без трейтов,
и нет такой ситуации для которых трейты необходимы.

всё, для чего они подходят - упрощать код в мелких проектах
источник

АЯ

Андрей Ява in phpGeeksJunior
Владислав Субботин
Да и ООП тоже появился позже )
нет
источник

АЯ

Андрей Ява in phpGeeksJunior
ООП появился раньше.
источник

АЯ

Андрей Ява in phpGeeksJunior
или ты про ООП в пыхе?
источник

ВС

Владислав Субботин... in phpGeeksJunior
Андрей Ява
если хорошо подумать, то трейты не нужны.
нет такой ситуации которую нельзя решить без трейтов,
и нет такой ситуации для которых трейты необходимы.

всё, для чего они подходят - упрощать код в мелких проектах
Есть у меня для вас такая ситуация. Но она специфична и скорее относится к конкретному проекту
источник

ВС

Владислав Субботин... in phpGeeksJunior
Андрей Ява
или ты про ООП в пыхе?
Да
источник

АЯ

Андрей Ява in phpGeeksJunior
Владислав Субботин
Есть у меня для вас такая ситуация. Но она специфична и скорее относится к конкретному проекту
Значит можно сделать другое решение.
источник

ВС

Владислав Субботин... in phpGeeksJunior
Андрей Ява
Значит можно сделать другое решение.
Только оно будет очень дорогим и делать его никто не будет. Автоматически отбрасываем )
источник

ВС

Владислав Субботин... in phpGeeksJunior
Так что в некоторых вот таких специфичных случаях всё-таки без костылей нельзя
источник

АЯ

Андрей Ява in phpGeeksJunior
Ну в том и суть костылей, что это костыли а не правильное решение.
источник

ВС

Владислав Субботин... in phpGeeksJunior
Ну да, конечно.
источник

АЯ

Андрей Ява in phpGeeksJunior
Получаем что трейты это костыли, просто они не такие ужасные, как другие костыли.
источник

ВС

Владислав Субботин... in phpGeeksJunior
Костыли, как возможность языка )
источник

ВС

Владислав Субботин... in phpGeeksJunior
Если сравнивать с другими языками, более заточенными под ООП / типизацию, то, думаю, много всего ещё можно критиковать
источник

S

Shurick in phpGeeksJunior
Владислав Субботин
Да и ООП тоже появился позже )
// ооп в 1967 - Simula - first object-oriented programming language
Begin
  Class Glyph;
     Virtual: Procedure print Is Procedure print;;
  Begin
  End;
 
  Glyph Class Char (c);
     Character c;
  Begin
     Procedure print;
       OutChar(c);
  End;
End;
источник

ВС

Владислав Субботин... in phpGeeksJunior
Речь про ООП в пхп
источник