Вопрос не по симфони, но всё такие подскажите, насколько правильно группировать

штуки в объекты не по тому, насколько вместе они ходят, а по тому, что они вместе влияют на что-то, но друг на друга они никак не влияют и могут меняться совершенно независимо друг от друга?

поясню на примере - есть условная сущность Car. У машины есть флаг - показывать ли её в рекламе. Если машина красная, бэушная, это не седан и у неё пробег больше 100к - не показываем её в рекламе. И вопрос в том - стоит ли объединять эти свойства в какой-то VO, чтоб было проще вычислять флаг рекламы или это говноидея?

6 ответов

3 просмотра

сложно по такому описанию что то посоветовать. Если Car может на основе своих данных типа, седан, пробег и т.п. вернуть true\false рекламы то почему бы это не сделать просто методом? Но если логика определения рекламы не такая явная, и может быть сложнее таких простых правил как пробег и тип, ну скажем пользователь забанил автора этой тачки, и не хочет видеть с ней рекламу, то true/false уже так просто не посчитать. Если речь о каком то ДТО который должен передаться с флагом релкамы, то вполне нормально его просчитать заранее и передать как флаг. Тут наверное в дело должны включаться контексты.

E- Автор вопроса
Alexander Nazarov
сложно по такому описанию что то посоветовать. Есл...

нене, там никакию люди и авторы никак не вовлечены. флаг считается только на основании этих 3-5 свойств объекта. и свойства эти сами по себе не "рекламные", а просто вот так построена логика, что именно от них зависит показ в рекламе. а список тачек для рекламы обновляется раз в сутки кроном, который просто приходит в таблицу и выгребаёт всё с флагом

E
нене, там никакию люди и авторы никак не вовлечены...

в чем тогда вопрос, если у вас в таблице и так хранится флаг?

E- Автор вопроса
Alexander Nazarov
в чем тогда вопрос, если у вас в таблице и так хра...

В том, что если эти флаги вместе друг от друга не зависят, но в куче влияют ещё на один - несколько правильно их объединять в какой-то один объект) Но я не исключаю, что какую-то ерунду спрашиваю) 😶

E
В том, что если эти флаги вместе друг от друга не ...

Для чего объединять? Что вам на практике это даст? Вы перенесете эти свойства из вашего класса, в какой то VO? На сколько ваши Car могут жить без этих свойств?

E
В том, что если эти флаги вместе друг от друга не ...

Вопрос наверное связан с агрегацией и композицией?

Похожие вопросы

Обсуждают сегодня

'frakturBold' => ['𝖆', '𝖇', '𝖈', '𝖉', '𝖊', '𝖋', '𝖌', '𝖍', '𝖎', '𝖏', '𝖐', '𝖑', '𝖒', '𝖓', '𝖔', '𝖕', '𝖖', '𝖗', '𝖘', '𝖙', '𝖚', '𝖛', '𝖜', '𝖝', '𝖞', '𝖟', '𝕬', '𝕭', '𝕮', '𝕯'...
Roma
4
Есть полностью собранная база "шрифтов" - подобных символов?
Shen
9
Дорогие друзья, есть тут те, Кто рад поучаствовать в работе и в команде над игровой платформой? Мы делаем игровую и уникальную платформу. Стек платформы Go и React. Нам ...
Александр Цивин :)
2
Короче получается только кнопки не поменять А кнопки вроде тоже слетают при редактировании не?
inc.
10
Тг будет банить бота который принимает донаты без stars? Бот буквально на 10-20 человек
Vexylon
6
а у тя шо за бот?
Андрей
6
Кто сколько за бота берёт? (Я покупать не хочу)
Ivan Aleksandrovich
10
Век живи, век учись и продолжай удивляться Carbon Оказывается, в Carbon дату можно задавать даже текстом 😲 <?php use Carbon\Carbon; $october_date = new Carbon("last sunday o...
Igor
3
или ты хочешь сказать что это по юникоду не дефолтные буквы?
Roma
4
Приветы. Если бот доступен только пользователям из России и Беларуси, старсы для него неизбежны? Как Apple планируется собирать платежи с покупок в сторе на территориях, где у...
Prokhor Chulkov
8
Карта сайта