Size: a a a

2020 October 07

VS

Vlad Sobenko in symfony
Vladimir
Ну короче я понял что не удасться убедить его писать без трейтов :/
Да, тут только грубая сила остается)
источник

SP

Sergey Protko in symfony
Dmitry
получим дублирование кода, что в конкретном приведенном мною случае softdeletable считаю оверкилом
Ещё раз - дублирование кода это не проблема. Это может быть чем-то на что стоит обращать внимание (как код смелы) но не надо считать что это всегда плохо.

Плохо это дублирование знаний
источник

V

Vladimir in symfony
Vlad Sobenko
Да, тут только грубая сила остается)
Ну это типовые штуки, я не думаю что когда-нибудь в жизни понадобится кастомный idшник для этого проекта
источник

SP

Sergey Protko in symfony
И основная сложность что дублирование знаний часто выглядит как дублирование кода, но не все дублирование кода есть дублирование знаний. и разобраться что есть что сложно, потому происходит подмена понятий в сторону упрощения
источник

V

Vladimir in symfony
Не могу же я сказать трейты говно потому что так сказали в чатике))
источник

ЕР

Евгений Ромашкан... in symfony
Vladimir
Не могу же я сказать трейты говно потому что так сказали в чатике))
Трейты говно потому что нужно по разным файликам лазить и следить за связями вместо того чтобы иметь всю информацию рядом
источник

ЕР

Евгений Ромашкан... in symfony
id одной сущности на id другой не влияет, смысла объединять в один кусок кода их объявление - нету
источник

SP

Sergey Protko in symfony
Vladimir
Не могу же я сказать трейты говно потому что так сказали в чатике))
Трейты инструмент. Они не плохо и не хорошо. Но трейты это механизм копипасты кода. И в большинстве случаев когда возникает желание чёт скопипастить надо подумать зачем.

Например - вот есть две структуры данных и у обеих надо дата время когда ее создали. Есть тут дублирование? Скорее нет так как эти "дата время" выражают разные вещи в контексте своих задач.
источник

V

Vladimir in symfony
Евгений Ромашкан
Трейты говно потому что нужно по разным файликам лазить и следить за связями вместо того чтобы иметь всю информацию рядом
Ну в шторме есть быстрый переход по классам, также и про DI можно сказать, лол
источник

JB

Jurij Bachkov in symfony
Я не видел не одного нормального аргумента против трейтов
Про связанность бабушке своей рассказывай  
Видел горе программистов, которые не умеют готовить трейты, к примеру вместо того, чтобы унаследоваться от базового абстрактного класса, они трейт прокидывают
Трейт надо применять там, где нет возможности сделать декомпозиции или построить красивую иерархию
источник

V

Vladimir in symfony
Sergey Protko
Трейты инструмент. Они не плохо и не хорошо. Но трейты это механизм копипасты кода. И в большинстве случаев когда возникает желание чёт скопипастить надо подумать зачем.

Например - вот есть две структуры данных и у обеих надо дата время когда ее создали. Есть тут дублирование? Скорее нет так как эти "дата время" выражают разные вещи в контексте своих задач.
Да, там еще есть трейт для created и updated
источник

ЕР

Евгений Ромашкан... in symfony
Vladimir
Ну в шторме есть быстрый переход по классам, также и про DI можно сказать, лол
DI скрывает информацию которая в текущем классе не нужна.
Трейты и не скрывают по сути ничего, и код усложнют.
источник

V

Vladimir in symfony
Евгений Ромашкан
DI скрывает информацию которая в текущем классе не нужна.
Трейты и не скрывают по сути ничего, и код усложнют.
Ну в DI тоже по классам прыгать надо)
источник

ЕР

Евгений Ромашкан... in symfony
Vladimir
Ну в DI тоже по классам прыгать надо)
Значит чего-то не так сделал)
источник

SP

Sergey Protko in symfony
Мдя
источник

JB

Jurij Bachkov in symfony
Vladimir
Ну в DI тоже по классам прыгать надо)
Пиши прямо в HTML - зачем вообще тебе классы?
источник

SP

Sergey Protko in symfony
Jurij Bachkov
Я не видел не одного нормального аргумента против трейтов
Про связанность бабушке своей рассказывай  
Видел горе программистов, которые не умеют готовить трейты, к примеру вместо того, чтобы унаследоваться от базового абстрактного класса, они трейт прокидывают
Трейт надо применять там, где нет возможности сделать декомпозиции или построить красивую иерархию
Я видел горе программистов которые свое неумение декомпозиции маскируют абстрактными классами и трейтами которые никак не помогают поддерживать проект)
источник

V

Vladimir in symfony
Евгений Ромашкан
Значит чего-то не так сделал)
$this->blaBlaService1->doSmth()
$this->blaBlaService2->doSmth()

Чтобы посмотреть doSmth тоже придется прыгать по файлам, как и по трейтам, так что так себе аргумент, с учетом того что можно в шторме переходить в 1 клик или ctrl+b
источник

IS

Iurii Sivovol in symfony
Если у меня по проекту id везде, скажем, bigint, auti increment, для сущностей, что плохого в том, что вынесу id, getter в трейт? Все зависит от задачи. Синглтон тоже имеет место жить
источник

ЕР

Евгений Ромашкан... in symfony
Vladimir
$this->blaBlaService1->doSmth()
$this->blaBlaService2->doSmth()

Чтобы посмотреть doSmth тоже придется прыгать по файлам, как и по трейтам, так что так себе аргумент, с учетом того что можно в шторме переходить в 1 клик или ctrl+b
Разница с трейтами в том, что трейты прячут информацию которой место именно в текущем классе.
источник