Size: a a a

Software Design/Architecture/Zen

2021 November 30

A

Alexander in Software Design/Architecture/Zen
А на чтение интеграционных может и не быть
источник

k

knopkod4v in Software Design/Architecture/Zen
ну прост ты говоришь, что эти createdAt не связаны с логикой никак. Если так - зачем плодить всякие "предметные области", это ж просто CRUD.
источник

A

Alexander in Software Design/Architecture/Zen
Ну почему. Дата созданич сущности. Чтобы потом показывать на фронте
источник

A

Alexander in Software Design/Architecture/Zen
Дата создания заказа
источник

A

Alexander in Software Design/Architecture/Zen
Чем не ответственность бизнеса
источник

A

Alexander in Software Design/Architecture/Zen
Я не могу прям уверено спорить. Опыта с выделеной предметной областью у меня пока мало
источник

k

knopkod4v in Software Design/Architecture/Zen
ну тут, наверное, есть смысл. Просто я когда вижу createdAt/updatedAt - это обычно "Так, мы не оч понимаем чё в системе происходит, нам надо по быстрому какой-то аудит, бахнем тут пару полей с датами для создания/обновления описания товара".
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Эт не про аудит
источник

SP

Sergey Protko in Software Design/Architecture/Zen
И в целом полезная штука
источник

A

Alexander in Software Design/Architecture/Zen
Я вот пока что почти всегда это делаю на уровне бд и в случае, если нужно использовать на фронте или для бизнес операций, то на уровне сущностей
источник

A

Alexander in Software Design/Architecture/Zen
Изначально я не добавляю в сущность то, что не будет использоваться
источник

k

knopkod4v in Software Design/Architecture/Zen
а про шо?
Часто такие поля нужны просто чтобы человеки понимали что когда произошло, чтобы востановить какие-то события в системе вручную и понять что происходит
источник

k

knopkod4v in Software Design/Architecture/Zen
или чтобы исторически понять когда произошло событие (но при этом событий нету, есть CRUD)
типа "а я это уже обновил или ещё нет?"
источник

SP

Sergey Protko in Software Design/Architecture/Zen
если у тебя такие вопросы возникают то это уже про юзер флоу и бизнес0
источник

SP

Sergey Protko in Software Design/Architecture/Zen
а так есть еще кейсы когда тебе надо данные слить в какой data warehouse и ты тупо по updated at курсор держишь
источник

AB

Andrey Bakharev in Software Design/Architecture/Zen
Как вариант: payment-транзакции. Создал в одно время, а заапрувил в другое
Время создания ордера и прочего у нас бизнес ещё просить менять, чтобы для налоговой или всяких проверок данные красивые показывать
источник

k

knopkod4v in Software Design/Architecture/Zen
но далеко не всегда это перерастает в "объекты предметной области", далеко не всегда появляются if-ы с этими полями в коде, часто просто какой-то сотрудник d в админке отсортировал по дате и чёт там апдейтит себе
источник

k

knopkod4v in Software Design/Architecture/Zen
опять же, если посмотреть с точки зрения того, что данные объекта должны использоваться в большинстве методов объекта, а они никогда не используются (createdAt только при создании), то всё же возникает сомнение "А оно тут точно надо?"
источник
2021 December 01

SP

Sergey Protko in Software Design/Architecture/Zen
не все то "бизнес логика" где нужны ифы в коде.
источник

SP

Sergey Protko in Software Design/Architecture/Zen
тут вопрос кто знает когда что-то происходило и важно ли тебе это. Есть дата время обработки запроса, есть дата время когда объект был создан, есть дата время когда был записан в базу. Время относительно.
источник