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

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

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

6 ответов

11 просмотров

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

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

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

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

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

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

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

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

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

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

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

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

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

Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
сделал сайт, прикрутил в боте сайт, и виджет логина. как автоматически логинить пользователя в аккаунт(телеграм), при входе с бота?
Александра Чернивецкая
5
Объясните, пожалуйста, почему компилятор ругается на использование в условии неинициализированной переменной: int x; Task.Run(async () => { x = await somefunc(); }).Wait...
Александр
5
Ребят, подскажите, пожалуйста, почему в префиксе к ассетам, которые генерируются через фильтр | theme в шаблоне, стал вдруг появляться index.php? Вот так выглядит ссылка на а...
Виталий
1
Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
4
Блин, ребята, сори за тупые вопросы. А можно ли как-то открыть вебапку по нажатию на кнопку в меню(которое появляется слева, команды)?
Artem Stormageddon
3
а плаксы из-под питона умеют только в комфортных условиях что-то выдавить из себя?)
Lencore
9
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Коллеги, может знает кто, можно ли цвет бейджа счётчика в BackendMenu менять без бубнов?
Alex Blaze
3
Карта сайта