Size: a a a

Software Design/Architecture/Zen

2020 September 30

DZ

Dmitry Zakharov in Software Design/Architecture/Zen
кто как видит это архитектурно
источник

VS

Vyacheslav Startsev in Software Design/Architecture/Zen
сгенерить доменное событие  EntityCreated
отправить его в ивент бас
а сервис, который рассылает через вебсокеты инфу, будет подписан на такое событие
источник

АЯ

Андрей Ява in Software Design/Architecture/Zen
Dmitry Zakharov
братва кто подскажет как по uncle bob'овски реализовать, так чтобы после создания сущности в сервисе уведомить скажем в вебсокет что операция прошла успешно
после создания сущности отправить уведомление в сокет.
источник

АЯ

Андрей Ява in Software Design/Architecture/Zen
только зачем?
источник

SA

Sergey Alaev in Software Design/Architecture/Zen
Dmitry Zakharov
братва кто подскажет как по uncle bob'овски реализовать, так чтобы после создания сущности в сервисе уведомить скажем в вебсокет что операция прошла успешно
нужна очередь (в памяти, MQ, персистент - зависит от требований), которую слушает сервис, перекладывающий сообщения из неё в websocket
при создании сущности сервис должен вызвать сервис уведомлений, который положит событие в очередь
источник

АЯ

Андрей Ява in Software Design/Architecture/Zen
обычно свщность создаётся по запросу. так вот в ответе на запрос можно отвечать 200 ОК
источник

LK

L K in Software Design/Architecture/Zen
Андрей Ява
обычно свщность создаётся по запросу. так вот в ответе на запрос можно отвечать 200 ОК
это обычно так у крудах
а у человека есть бизнес требование уведомление по вс
источник

АЯ

Андрей Ява in Software Design/Architecture/Zen
а типа если сущность создалась где-то  в сторонке?
источник

ST

Serguei Tarassov in Software Design/Architecture/Zen
Забыл название антипаттерна, когда в свитч-кейсе лопатят операции в зависимости от типа. Ктонить напомнит?
источник

SA

Sergey Alaev in Software Design/Architecture/Zen
Serguei Tarassov
Забыл название антипаттерна, когда в свитч-кейсе лопатят операции в зависимости от типа. Ктонить напомнит?
звучит как pattern matching, это точно антипаттерн?
источник

АЯ

Андрей Ява in Software Design/Architecture/Zen
не знал что это антипаттерн.
источник

ST

Serguei Tarassov in Software Design/Architecture/Zen
Sergey Alaev
звучит как pattern matching, это точно антипаттерн?
Антипаттерн по смыслу, добавляется тип/класс и по всему коду нужно дописывать кейс во всех селекторах. Название забыл, но читал точно
источник

SA

Sergey Alaev in Software Design/Architecture/Zen
Serguei Tarassov
Антипаттерн по смыслу, добавляется тип/класс и по всему коду нужно дописывать кейс во всех селекторах. Название забыл, но читал точно
Звучит как причина использовать паттерн visitor. В его описании может быть упоминание такого антипаттерна
источник

SA

Sergey Alaev in Software Design/Architecture/Zen
Но, если что, это всё устарело с появлением sealed hierarchies в современных языках
источник

ST

Serguei Tarassov in Software Design/Architecture/Zen
И визитор и адаптер и стратегия - весь полиморфизм для этого
источник

VS

Vyacheslav Startsev in Software Design/Architecture/Zen
Это, наверное, не антипаттерн, а запах кода
https://refactoring.guru/ru/smells/switch-statements
источник

АЯ

Андрей Ява in Software Design/Architecture/Zen
Serguei Tarassov
И визитор и адаптер и стратегия - весь полиморфизм для этого
только визитор, адаптер и стратегия применимы к ООП,
а вот свич можно юзать и вне последней
источник

АЯ

Андрей Ява in Software Design/Architecture/Zen
так что касательно ООП - да, лучше так не делать, берите стратегию и фигачте, но отдельно взятым этот подход плохим не является
источник

R

Roman in Software Design/Architecture/Zen
Serguei Tarassov
Забыл название антипаттерна, когда в свитч-кейсе лопатят операции в зависимости от типа. Ктонить напомнит?
Это не антипаттерн, а нарушение DIP
источник

ВУ

Валентин Удальцов... in Software Design/Architecture/Zen
Serguei Tarassov
Забыл название антипаттерна, когда в свитч-кейсе лопатят операции в зависимости от типа. Ктонить напомнит?
даункастинг?
источник