
Артур Евгеньевич
28.05.2018
17:30:18
но он уже чисто инфраструктурные изменения мутит

Maksim
28.05.2018
17:30:54
Ну что это за зверь на вскидку не скажу. Но в целом это самый простой способ сделать ес без смс и регистрации)

Артур Евгеньевич
28.05.2018
17:31:40
я не понимаю зачем этот aply я же могу просто в шину кидать и уже там все централизовано обрабатывать
а если у меня 10 сущностей на которые это событие влияет

Google

Maksim
28.05.2018
17:32:31
Aply по логике вызывается внутри агрегата.
А потом, после того, как стрим засейвится, события попадут в бас и будкт розданы желающим
Ты как собираешься событиями из шины стейт менять?
Событие - то, что произошло. Т.е. изменение аргрегата уже было совершено. А у тебя что первичным выходит?
А восстанавливать агрегат из стрима как?)

Артур Евгеньевич
28.05.2018
17:36:23
я пока не разобрался
у нас комменты по сути не особо являются частью агрегата
т.к они хранятся только лдя пост обработки
т.е реплаи мы не мутим
и если бы не требования закона они вообще бы не хранились, а просто в comet посылались

Maksim
28.05.2018
17:40:24
Над смотреть реализацию вашу. Но в целом, обычный ес. Простой, теплый и ламповый.
П.с. нафиг для ес не нужен бас, если что)

Aleh
28.05.2018
17:44:29

Maksim
28.05.2018
17:47:24

Артур Евгеньевич
28.05.2018
17:49:13
сейчас мне надо пробросить событие, чтобы чуваки из другого отдела(другйо bounded context по сути) смогли себе сохранить коммент

Google

Артур Евгеньевич
28.05.2018
17:49:21
это явно нужно делать в басе
я так вижу

Mykola
28.05.2018
18:10:17
йоу, коллеги! странный вопрос в чате: все ли параметры конструктора можно считать "зависимостями"?

Bohdan
28.05.2018
18:12:22

Mykola
28.05.2018
18:13:03

Aleh
28.05.2018
18:13:16

Mykola
28.05.2018
18:13:41
я не придалбываюсь, просто пытаюсь забрейнштормить

Bohdan
28.05.2018
18:13:55
ладно, на мысль вы меня натолкнули
окей, а что тогда есть зависимость?

Maksim
28.05.2018
18:14:31

Bohdan
28.05.2018
18:17:22

Mykola
28.05.2018
18:18:18

Bohdan
28.05.2018
18:19:33
да, у меня с такими формулировками ещё не все хорошо

Mykola
28.05.2018
19:00:33
я за формулировками и пришел...

Bohdan
28.05.2018
19:05:16
тогда давай сначала разберёмся с тем, что есть зависимость, а потом вернёмся к конструкторам
зависимость - это что-то, изменение чего может повлиять на поведение зависимой сущности (не entity, а класса - к примеру)
какое может быть изменение?
может быть изменение данных (стейта)
а может быть изменение поведения
если не ударяться в глубины - это рантайм-изменение или компайлтайм-изменение соответственно

Sergey
28.05.2018
21:49:43

Bohdan
28.05.2018
21:49:53
зависимость, не отрицаю
тем более в случае передачи по ссылке
проблема в том, что в большинстве случаев (опустим фронтенд) это не отслеживается

Google

Sergey
28.05.2018
21:50:56
если тебя интересует как связанность тут может проявляться.... ну вот тебе пример. Вот есть у тебя int. инт как инт. Че там может быть такого. Вот только инт этот в одной системе может быть 32-х битный а в другой 64-х битной а в третьей он 64х битный беззнаковый ровно до тех пор пока не появляется в левой части выражения с побитовыми операциями (привет js)
а еще веселье с big/little endian

Bohdan
28.05.2018
21:51:54
ну это уже вопросы реализаций

Sergey
28.05.2018
21:51:56
и вот уже не все так просто

Bohdan
28.05.2018
21:52:31
я пока остановился на рантайм изменениях и компайлтайм изменениях
(зависимостей, ессно)

Sergey
28.05.2018
21:52:43

Bohdan
28.05.2018
21:53:25
ну по такой формулировке вопрос Николая сразу решается

Sergey
28.05.2018
21:53:26
это могут быть данные, время, квантовые флуктуации.... что угодно
точнее не так... влияет не на поведение а на конечный результат

Bohdan
28.05.2018
21:54:29
угу, согласен

Sergey
28.05.2018
21:54:48

Sergey
28.05.2018
21:54:53
ну это я так разницу воспринимаю

Bohdan
28.05.2018
21:55:13
сервисы не всегда стейтлесс (к сожалению)
хотя тут как приготовить

Sergey
28.05.2018
21:55:19
хотя сервисы могут ссылаться на значения...

Bohdan
28.05.2018
21:55:50
и сущность (стейт) может иметь поведение

Sergey
28.05.2018
21:56:06
а я не говорил что значения не могут иметь поведения
я про поведение вообще не говорил....
хотя честно сказать - я думаю что вот это разграничение - "сервисы" и "значения" это не то чем надо заниматься, и возможно от этого разграничения больше вреда чем пользы
ценности в целом это разграничение никакой не дает, ничего не упрощает с точки зрения декомпозиции ну и в целом нафига тогда их разделять? вот объекты значения и сущности разделять в целом адекватно, так как это указывает на то как мы можем сравнивать между собой эти вещи

Google

Sergey
28.05.2018
21:58:06
а сервисы.... это даже не объекты... это модули скрывающие зависимости.... как правило.
набор функций, некоторые из которых имеют доступ к некому стэйту

Bohdan
28.05.2018
21:58:29
надо услышать постановку проблемы

Admin
ERROR: S client not available

Sergey
28.05.2018
21:58:37
да, а то меня опять понесло чет

Bohdan
28.05.2018
21:58:43
а то мы рассуждаем, а в чем фактически контекст - не видно
может там все прозаичнее

Sergey
28.05.2018
21:59:19

Bohdan
28.05.2018
21:59:41

Sergey
28.05.2018
21:59:45
но ничего "помогающего" я придумать не могу (или найти) ибо скорее всего плохо пока осознаю проблему

Bohdan
28.05.2018
22:00:03
сущности и VO это еще ладно
а сервисы....

Sergey
28.05.2018
22:00:12
ничем от процедурного программирования не отличается, просто удобно группировать код

Bohdan
28.05.2018
22:00:48
имхо серебряной пули нет
даже если сервис стейтфул (коннект к базе etc) - стараюсь выносить этот стейт за контекст текущей операции

Sergey
28.05.2018
22:01:09
вот если бы я был умным я бы тебе про монады пошутил

Bohdan
28.05.2018
22:01:19
а если бы я был умным - я бы понял

Sergey
28.05.2018
22:01:20
но я нет и даже не уверен уже что шутки про монады тут в тему
trigger @mkusher

Bohdan
28.05.2018
22:02:24
тогда уже Колю триггерить надо тоже

Google

Sergey
28.05.2018
22:02:50
@Lividgreen
а пока ждем можем посмотреть смешные видосики
https://www.youtube.com/watch?v=I8LbkfSSR58&list=PLbgaMIhjbmEnaH_LTkxLI7FMa2HsnawM_

Bohdan
28.05.2018
22:03:29
не, уже не сегодня
я вот смотрю на if err != nil и чет думаю про монады Maybe

Mykola
28.05.2018
22:52:40
правда, все они мне кажутся надумаными

Sergey
29.05.2018
00:42:33
если мы говорим в контексте DI, то зависимости могут быть параметризованы. То есть.... мы можем описать зависимости и их параметры. И можем захотеть часть параметров вынести вовне, например, в параметры окружения. В этом смысле разделение корректно.
разница лишь в то что у тебя могут быть описаны зависимости а параметры подставляться будут при сборке этих зависимостей

Sheldhur
29.05.2018
02:54:00
в линуксиках щас почту всё так же через sendmail шлют или чёт по дружелюбнее в плане конфигурации есть?

Dmitry
29.05.2018
06:13:59

Bohdan
29.05.2018
06:28:11