
Andrew
09.05.2018
09:58:19
теперь будет у юзера new UserEmail
вернее

Like
09.05.2018
09:58:29

Aleh
09.05.2018
09:58:45

Google

Andrew
09.05.2018
09:58:45
fucntion email (UserEmail $email)
$this->email = $email
@shindakioku а почему void?

Maksim
09.05.2018
09:59:58
fluent interface вышел из моды :)
зачем этому методу что-то возвращать?)

Adel
09.05.2018
10:00:37
Кстати. а почему UserEmail? не просто Email?

Like
09.05.2018
10:00:43

f4rt~
09.05.2018
10:00:45

Maksim
09.05.2018
10:02:01

Like
09.05.2018
10:02:13

f4rt~
09.05.2018
10:02:27
чё?)
разделение на команду/запрос

Maksim
09.05.2018
10:02:33

Like
09.05.2018
10:02:39

Maksim
09.05.2018
10:02:39
и возвращал новый объект себя

Google

Adel
09.05.2018
10:03:25

f4rt~
09.05.2018
10:03:28

Maksim
09.05.2018
10:03:35

Like
09.05.2018
10:03:36

f4rt~
09.05.2018
10:04:15

Maksim
09.05.2018
10:04:59
мир стремительно становится хуже

Dmitry
09.05.2018
10:05:07

Like
09.05.2018
10:05:11

f4rt~
09.05.2018
10:05:36

Maksim
09.05.2018
10:05:56
но, ладно) отбросим все сомнения в том, что cqrs сюда притянут за яйца:
команда может возвращать результат.
шах и мат.

Adel
09.05.2018
10:06:11

f4rt~
09.05.2018
10:06:19
мир стремительно становится хуже

Adel
09.05.2018
10:06:20
true или false? ))

Maksim
09.05.2018
10:06:55
вопрос не в том, какой. А в том, что может.

f4rt~
09.05.2018
10:07:05

Maksim
09.05.2018
10:07:18

Like
09.05.2018
10:07:38
Сейчас бы за cqrs срачи разводить в 2018ом

Adel
09.05.2018
10:07:55

Maksim
09.05.2018
10:08:04
да cqrs нынче попса похлеще mvc в бывалые годы)

Google

Maksim
09.05.2018
10:08:26

Adel
09.05.2018
10:09:56
контекст почитай
это я тупой и ничего не понимаю, или Максим чтото сказал, не пытаясь обьяснить свою точку зрения?

Maksim
09.05.2018
10:10:43
максим задал вопрос, каким образом к объяснению войда приплели cqrs

f4rt~
09.05.2018
10:11:34

Maksim
09.05.2018
10:11:36
если у меня юзерь иммутабелен и смена емейла возвращает новый объект юзеря - это уже не cqrs?)

Adel
09.05.2018
10:13:35
но это все равно странно :)

Maksim
09.05.2018
10:14:08
ну так пускай умный человек объяснит идиоту, за каким хером он за cqrs накинул :)

f4rt~
09.05.2018
10:14:56
еще раз ты рассуждаешь обобщенно, я привел свои умозаключения обращая внимания на текущий контекст

Maksim
09.05.2018
10:15:22
круто. мы буковки подгоняем под то, что нужно в текущий момент
миру звездец)

Adel
09.05.2018
10:16:04
свободномыслящий Максим развел спор ради спора :)

Maksim
09.05.2018
10:17:03

f4rt~
09.05.2018
10:17:49
чел просто набросил хуйню не принимая во внимания, что слова были сказанны непосредственно к нужному контексту, где юзер не иммутабельный

Sergey
09.05.2018
10:17:52

f4rt~
09.05.2018
10:18:01

Sergey
09.05.2018
10:18:03
вот он и возмутился

f4rt~
09.05.2018
10:18:17
коль так, тогда my bad

Sergey
09.05.2018
10:18:34
Максима легко возбудить фразами CQRS, actor model, event sourcing и "платежки"

Maksim
09.05.2018
10:18:50

Google

Adel
09.05.2018
10:18:56
обьясните кратко разницу
CQRS CQS

Sergey
09.05.2018
10:19:11
ох

Maksim
09.05.2018
10:19:27
Сергей, форвардни просто то, что мне писал)
универсальный ответ получился ж)

Sergey
09.05.2018
10:19:40
CQS - разделение методов ОДНОГО ИНТЕРФЕЙСА на команды и запросы
CQRS - разделение команд и запросов по разным интерфейсам

Adel
09.05.2018
10:19:51

Sergey
09.05.2018
10:19:59

Adel
09.05.2018
10:20:15
да не. я понял. спасибо

Maksim
09.05.2018
10:20:36
для cqs не требуется разделение никакого. у тебя есть один интерфейс с двумя методами. Один для сайд эффектов но не возвращающий ничего и второй для чтения. То есть мы тут регламентируем ограничения для методов. Пример метода/функции которая нарушает CQS - array_pop.
CQRS это архитектурный паттерн, суть которого в том что бы разделить операции чтения и записи на уровне интерфейсов. Для записи один интерфейс и для чтения другой.
это разделение дает тебе свободу как именно будет происходить запись и чтение, будет ли это через один сторадж или несколько и т.д. свои модели чтения и т.п. Ну то есть все это уже детали реализации этих интфрейсов
cqs действует на уровне методов/функций, cqrs повыше

Adel
09.05.2018
10:21:13
а то я слышал варианты, что CQRS - это если только c ES. вот и спросил

Maksim
09.05.2018
10:21:51

Sergey
09.05.2018
10:26:11

Adel
09.05.2018
10:26:24

Maksim
09.05.2018
10:27:59
коль пошла такая пьянка: а почему собственно es без cqrs нельзя?)

Dmitry
09.05.2018
10:33:54
а что такое ES ?

Maksim
09.05.2018
10:34:08
event sourcing

Google

Dmitry
09.05.2018
10:35:07
столько аббревиатур появилось, и все одинаковые, только по контексту можно отличить. И то если в теме )))

Roman
09.05.2018
11:49:41

Sergey
09.05.2018
11:52:00
ну то есть без такого рода разделения сделать ES в целом невозможно

Maksim
09.05.2018
11:57:51

Sergey
09.05.2018
11:58:15
но тогда мы имеем дело только с командами

Aleh
09.05.2018
11:58:35
Мы можем читать из write model

Sergey
09.05.2018
11:58:42
ну и опять же стэйт самой write модели это тоже проекция)

Maksim
09.05.2018
11:59:01

Aleh
09.05.2018
11:59:18

Maksim
09.05.2018
11:59:30
отсюда вопрос, который накинул выше и на который ответ не получил)

Sergey
09.05.2018
12:00:25
Интерфейс один
ну далеко на этом ты ж не уедешь) но да, в теории можно. Просто я не уверен можно ли это называть event sourcing)
ибо sourcing как такового нет

Adel
09.05.2018
12:01:13
можно исправить фразу и сказать, что ES без CQRS бессмысленен
что в приличном обществе можно приравнять к слову нельзя

Sergey
09.05.2018
12:01:33

Aleh
09.05.2018
12:02:37