@oop_ru

Страница 557 из 785
Bohdan
15.03.2018
14:51:52
кстати, по доменным ивентам делать release на сущностях вручную - это нормальная практика?

Sergey
15.03.2018
14:57:45
это команда, а не операция)
команда это и есть операция)

andretshurotshka?❄️кде
15.03.2018
14:58:07
Mykola
15.03.2018
15:10:31
Google
Sergey
15.03.2018
15:11:35
с чего бы?
давай от обратного - почему ты считаешь что команда и операция это разные вещи? и в каком контексте ты так считаешь?

Bohdan
15.03.2018
15:12:01
команда - запрос/требование выполнения операции

Maksim
15.03.2018
15:12:04
команда - триггер операции) ну как-то по логике вещей)

чорд)

Bohdan
15.03.2018
15:12:13
императивненько

но! вызов любого метода в коде - это тоже команда

значит... что наш код - это большой командный автобус :D

Sergey
15.03.2018
15:13:42
в этом вся разница

Bohdan
15.03.2018
15:14:04
синхронная
не отрицаю

Sergey
15.03.2018
15:14:19
между "шиной команд", подразумевающую асинхронную природу операции. bus.handle(command) // а вот тут еще не известно // выполнилась ли команда на самом деле

Bohdan
15.03.2018
15:14:36
и это тоже не отрицаю)

Mykola
15.03.2018
15:14:45
команда имеет 1. того, кто ее дает 2. опционально исполнителя 3. не подразумевет никакой процесс сама по себе операция 1. это процесс 2. подразумевает детерминированность

Google
Sergey
15.03.2018
15:14:52
по сравнению с handler.handle(command) // тут известно что операция завершена

Bohdan
15.03.2018
15:15:10
Sergey
15.03.2018
15:15:17
даже в случае с cqrs

Bohdan
15.03.2018
15:15:36
тут вообще cqrs не при чем

Sergey
15.03.2018
15:15:47
потому что повторюсь - шины и cqrs про разные аспекты

Aleh
15.03.2018
15:16:10
даже в случае с cqrs
команды всегда синхронные в cqrs

Sergey
15.03.2018
15:16:22
ну то есть блин

command bus -> (cqrs app) -> result event

понимаешь?

или даже так

Aleh
15.03.2018
15:17:29
https://groups.google.com/d/msg/dddcqrs/xhJHVxDx2pM/WP9qP8ifYCwJ

Sergey
15.03.2018
15:17:31
command bus -> (магия) -> handler -> database -> done

Aleh
15.03.2018
15:17:50
после запуска команды ты синхронно можешь получить результат

если нет, то это не команда и не cqrs

Maksim
15.03.2018
15:18:20
накладывать на себя ограничение потому, что так сказал кто-то - сомнительная идея.

Aleh
15.03.2018
15:18:31
просто не называй это командой

никто ж не запрещает так делать

Google
Maksim
15.03.2018
15:18:47
да это команда) в том-то и дело

Aleh
15.03.2018
15:19:00
нет, если ты не можешь получить результат ее работы

Sergey
15.03.2018
15:19:01
если нет, то это не команда и не cqrs
> actually I said that an asynchronous command doesn't exist :) its actually another event. это философия

Aleh
15.03.2018
15:19:14
это терминология

Sergey
15.03.2018
15:19:17
ну то есть command bus оно как раз таки про те мифические "асинхронные команды" которые на самом деле ивенты

и я не вижу из этого следствия что cqrs это всегда "синхронные команды"

Maksim
15.03.2018
15:19:46
Mykola
15.03.2018
15:20:03
блин, вы щас мешаете семантику понятий в непонятную кучу

Mykola
15.03.2018
15:20:19
зачем вы это делаете?

есть ивент, есть команда, иногда это разные лица одного и того же обьекта, но это совсем разные понятия

так же как и команда/операция

Артур Евгеньевич
15.03.2018
15:21:14
ивент это следствие команды

вот!

одно из следствий

Aleh
15.03.2018
15:21:27
да с чего вдруг-то?) могу и получу.
тогда все хорошо и она синхронная

Mykola
15.03.2018
15:21:27
это с чего?

Bohdan
15.03.2018
15:21:29
почему асинхронная команда - это ивент?)

Aleh
15.03.2018
15:21:30
нет проблем)

Maksim
15.03.2018
15:21:38
Google
Bohdan
15.03.2018
15:21:41
ухххх, давно тут такого активного не было

Aleh
15.03.2018
15:21:55
глупости
все плохо?(

Sergey
15.03.2018
15:22:10
тогда все хорошо и она синхронная
зачем тебе нужна синхронность для cqrs?

Maksim
15.03.2018
15:22:46
все плохо?(
ну это логика людей, котоые заявляют, что земля плоская, а ты соглашаешься с этим только потому, что они так сказали.

Aleh
15.03.2018
15:23:32
зачем тебе нужна синхронность для cqrs?
синхронность самый простой способ, с которым удобно работать. Зачем мне нужна асинхронность для команд?)

Артур Евгеньевич
15.03.2018
15:23:33
Sergey
15.03.2018
15:23:41
ну это логика людей, котоые заявляют, что земля плоская, а ты соглашаешься с этим только потому, что они так сказали.
я не вижу где Янг говорит о том что "cqrs только синхронные команды". Он там лишь размышляет что нет особо разницы между "событием" и "асинхронной командой".

Sergey
15.03.2018
15:24:12
и у тебя "выполнением задачи" занимаются отдельные процессы?

Sergey
15.03.2018
15:24:16
и взаомодействие асинхронно?

Aleh
15.03.2018
15:24:19
это ж неважно совсем

Sergey
15.03.2018
15:24:30
это ж неважно совсем
важно то что к CQRS это никакого отношения не имеет

Maksim
15.03.2018
15:24:31
я не вижу где Янг говорит о том что "cqrs только синхронные команды". Он там лишь размышляет что нет особо разницы между "событием" и "асинхронной командой".
ну я не в первый раз уже пытаюсь понять суть наброса "cqrs - ток синхронный", но по итогу херь какую-то в ответ получаю.

Артур Евгеньевич
15.03.2018
15:24:32
я для себя понял так - команда, это некое событие(заключающиеся в номерении что то совершить) инициированное извне

Aleh
15.03.2018
15:24:39
важно знаю ли я окончание, могу ли сказать “вот здесь опреация кончилась и вот результат” или не могу

Sergey
15.03.2018
15:25:16
как и кто реагирует на события не важно ровно так же как и им не важно откуда прилетело событие

Google
Bohdan
15.03.2018
15:25:23
событие - результат действия, которое есть результат намерения

Aleh
15.03.2018
15:25:28
Артур Евгеньевич
15.03.2018
15:25:32
andretshurotshka?❄️кде
15.03.2018
15:25:53
Хахахаххахаа CQRS

Артур Евгеньевич
15.03.2018
15:25:56
ResetUserPasswordCommand == TryToResetUserPasswordEvent

Sergey
15.03.2018
15:25:59
ну да =это ж неважно совсем
но это и не означает что если у меня модель экторов является write model то я не могу мутить CQRS используя "асинхронные команды"

andretshurotshka?❄️кде
15.03.2018
15:26:08
Юзали бы редакс и не мучались

Sergey
15.03.2018
15:26:31
с чего ты взял, что они асинхронные?
не смешивай понятие "асинхронный вызов" и "процесс"

Aleh
15.03.2018
15:26:39
ну вот я и спрашиваю

почему ты называешь их асинхронными

Bohdan
15.03.2018
15:26:45
может) намерение = попытка
разве что если рассматривать "намерение" как "событие намерения"

Sergey
15.03.2018
15:26:59
на этом месте я согласен с @Lividgreen что "операция" это больше про процесс а команда про намеренье запустить процесс

Aleh
15.03.2018
15:27:19
мы вроде про команды говорили, но можем про что угодно)

Maksim
15.03.2018
15:27:52
мы вроде про команды говорили, но можем про что угодно)
почему команда должна быть синхронной?) прямой ответ будет, или херь только всякая про "плохо"?)

Sergey
15.03.2018
15:28:00
foo.a(); bar.b(); // a еще могло даже не начаться // что делает операцию асинхронной foo.a(); bar.b(); // тут синхронно потому что b начнется строго по окончанию a

мы вроде про команды говорили, но можем про что угодно)
про шины команд вобоще-то, читай дискуссию с начала

Артур Евгеньевич
15.03.2018
15:29:12
мы вроде про команды говорили, но можем про что угодно)
Да тут последняя время такая тенденция наметилась - обращаешься с проблемой, а тебя уводят в свою сторонну, в отдоленную тему и начинают дискуссию)))

Mykola
15.03.2018
15:30:43
ребят, ну просто попробуйте на вкус: результат комманды - режет ухо результат операции - норм какие еще нужны аргументы? :)

Sergey
15.03.2018
15:31:28
ребят, ну просто попробуйте на вкус: результат комманды - режет ухо результат операции - норм какие еще нужны аргументы? :)
ну ок ок, команда по сути "что сделать и данные для операции". Хэндлер команды уже занимается операцией. Шина команды занимается маршрутизацией "команды" к "хэндлеру"

Страница 557 из 785