Size: a a a

2020 June 19

ВС

Владислав Субботин... in phpGeeksJunior
Начиная с 4-ой версии его начали затаскивать только
источник

S

Shurick in phpGeeksJunior
паскаль прородитель ооп ))
источник

ВС

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

J

Java Script Бог язык... in phpGeeksJunior
Скиньте кто то канал по JS или Node js
источник

S

Shurick in phpGeeksJunior
Java Script Бог языков
Скиньте кто то канал по JS или Node js
источник

ВС

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

б

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

б

бахнув пельменів... in phpGeeksJunior
Разве это не плюс? Упрощает жизнь разработчика
источник

ВС

Владислав Субботин... in phpGeeksJunior
бахнув пельменів
Окей, абстрактные классы делают тоже самое, разве нет?
Абстрактные классы выступают в качестве родителя, а не примеси. Это разные вещи.
источник

б

бахнув пельменів... in phpGeeksJunior
Владислав Субботин
Абстрактные классы выступают в качестве родителя, а не примеси. Это разные вещи.
Прост аргументы против трейта применяются и против абстрактного класса
источник

ВС

Владислав Субботин... in phpGeeksJunior
Примесь - это вообще не класс.
источник

б

бахнув пельменів... in phpGeeksJunior
Владислав Субботин
Примесь - это вообще не класс.
Интерфейс тоже
источник

б

бахнув пельменів... in phpGeeksJunior
Абстрактный класс тоже)
источник

б

бахнув пельменів... in phpGeeksJunior
Всё кроме класса – не класс
источник

S

Shurick in phpGeeksJunior
бахнув пельменів
Трейты позийионируют как хак для множетсвенного наследования и спаситель от дублирования кода. Если со вторым всё понятно, то какой смысл вложен  в первый тезис?
можешь посмотреть как у меня реализованы абстрактные классы для разгрузки кода модели
https://github.com/GonistLelatel/xpdo/blob/master/src/Model.php
источник

ВС

Владислав Субботин... in phpGeeksJunior
бахнув пельменів
Прост аргументы против трейта применяются и против абстрактного класса
Хорошо, применяются. Допустим, ты сделал трейт один раз и чтобы не нарушать Open-closed principle больше его не трогаешь. Как и абстрактный класс. Но трейт всё ещё остётся костыльным решением. Потому что порождает сайд-эффекты.
источник

ВС

Владислав Субботин... in phpGeeksJunior
бахнув пельменів
Интерфейс тоже
А это уже другая сущность, опять-таки.
источник

ВС

Владислав Субботин... in phpGeeksJunior
Ты щас всё в кучу пихаешь
источник

б

бахнув пельменів... in phpGeeksJunior
Нет, я в кучу не пихаю
источник

ВС

Владислав Субботин... in phpGeeksJunior
Как это не пихаешь? Собрал в одно и трейты, и абстрактные классы, и интерфейсы
источник