
Bohdan
20.03.2018
07:25:51

Sergey
20.03.2018
07:26:36
cqs, юху :D
ну простите, CQS Мэйер сформулировал еще в 80-х. И не он его по сути выдумал)

Bohdan
20.03.2018
07:27:06

Sergey
20.03.2018
07:27:18
ты юзаешь то, что по сути является лишь надстройкой над идеями которые появились в начале 70-х (а если пишешь на джаве - в 60-х)

Google

Sergey
20.03.2018
07:27:40
ничего принципиально ногово с тех пор не появилось, сам знаешь... и это печально)
https://ru.wikipedia.org/wiki/The_Mother_of_All_Demos - почитай и поплачь)
https://www.youtube.com/watch?v=yJDv-zdhzMY
можешь даже посмотреть))
tldw: презентация концепции мыши, графических интерфейсов, word processor, видеоконцеренции, гипертекст.... и все это примерно за 20 лет до того как хоть что-то из этого получило распространение...

Bohdan
20.03.2018
07:33:39
уже на вики глянул
грустненько
хотя вон AR вкатывается
который нормальный :D
ну и VR с ним
хотя это просто по причине возросших мощностей

Артур Евгеньевич
20.03.2018
08:08:46


Sergey
20.03.2018
08:09:08
ну и шина это шина, это не мэйлбокс. Она может быть входом в мэйлбок (через очереди задач например)

Google

Sergey
20.03.2018
08:09:49
по сути задача шины именно в том что бы "спрятать" эту деталь реализации
абстракция для отправки команд. Но с "запросами" она не помогает вообще никак
вообще на модель выполнения таких "процедурных" языков как java или C++ все это не так уж естественно ложится
ну то есть очень много надо сверху навернуть инфраструктуры. В языках типа эрланг или того же смолтока все это было весьма прозрачно

Артур Евгеньевич
20.03.2018
08:28:45
Т.е я отпавляю запрос в майлбокс, и жду что мне кто то на него ответит?(не зная кто) Это мне напоминает медиатор уже

Sergey
20.03.2018
08:29:35
дальше занимаешься своими делами
очень похоже на события
но немного с другой целью

Артур Евгеньевич
20.03.2018
08:30:46
а ответ я как получу? Т.е парарллельно пока я занимаюсь своими делами слушаю что-то типо порта? Или после того как свои дела завершу проверя, не случилось ли чего, что может быть овтетом?

Sergey
20.03.2018
08:30:58
я ссылки почитать дал - читай и разбирайся. И не пытайся связать это с паттернами типа медиатора и тд. Это чуть другая модель вычислений с точки зрения разруливания конкурентности. Цели разные у подходов. Абсолютно разные.
Общение, а не приказы.
короч разбирайся и еще раз повторю - экторы это в большей степени про взаимодействие и конкуренцию. Про рантайм. Не пытайся примешивать к этому шины там всякие, медиаторы и т.д. потому что.... ну это мелкие штуки и они больше про то что происходив в коде, организация кода, а не рантайма


Roman
20.03.2018
08:52:38

Артур Евгеньевич
20.03.2018
08:53:34

Roman
20.03.2018
08:55:44

Артур Евгеньевич
20.03.2018
08:57:04
То есть наш "эктор" отправляет сообщение другому, и все сообщения являются асинхронными по своей природе. Отправил сообщение и все. Положил его в мэйлбокс эктору а эктор как освободится почитает. Он может тебе прислать какой-то результат и положить уже в мэйлбокс первого эктора и т.д.
Мне пока непонятен порядок проверки маилбокса

Google

Bohdan
20.03.2018
08:57:41
ну эктор себе работает там, захотел - проверил
освободился, точнее

Артур Евгеньевич
20.03.2018
08:58:05
вот я послал запрос асинхронный и и мне нужен результат, но вы говорите что я не должен ждать результат. В моем понимании ждать == првоерять свой маилбокс

Roman
20.03.2018
08:58:14
Процесс последовательно разгребает mailbox. Обработал одно сообщение, перешел к следующему

Дмитрий
20.03.2018
08:59:09
"Последовательность" — сугубо опциональна
Если актор умеет читать и реагировать на все сообщения сразу то его в этом ничто не ограничивает

Bohdan
20.03.2018
09:00:08

Sergey
20.03.2018
09:00:22

Bohdan
20.03.2018
09:00:29

Roman
20.03.2018
09:01:17
Не обязательно, чтобы все акторы общались только асинхронно, это же с ума можно сойти
Но разработчики любят усложнять себе жизнь, job safety, наверное

F01134H
20.03.2018
09:05:33

Дмитрий
20.03.2018
09:06:02
Это без очередей
В этом суть

Sergey
20.03.2018
09:06:27
ключевое слово - маленькая. Очень маленький и простой примитив)
а не какая-нибудь там Enterprise Service Bus

Дмитрий
20.03.2018
09:08:19
Фича в том, что изначально у тебя нет никакого жестко заданного критерия, каким образом производить чтение мейлбокса

Google

Sergey
20.03.2018
09:08:25
но суть что в случае с SOA что в случае с экторами в целом остается неизменной... есть "хрени" и они взаимодействуют (message passing)

Дмитрий
20.03.2018
09:09:00
То есть механизм, который за раз захочет взять все сообщения что есть, не менее валиден чем тот, который будет брать по одному; короче предикат такой

Aleh
20.03.2018
09:45:35

Sergey
20.03.2018
09:46:37
гулп еще жив?)

Bohdan
20.03.2018
09:47:58
каждый день спрашивают во вью чатике

Panda
20.03.2018
09:48:08
А есть у кого может какой-то урок или посмотреть/почитать как правильно дизайнить апишки? Может, какие то практики лучшие, или "поваренная книга"

Bohdan
20.03.2018
09:48:12
"а есть ли темплейт под гулп?"

Sergey
20.03.2018
10:16:44

Дмитрий
20.03.2018
10:17:16
gulp lana

Uiiuviiw
20.03.2018
10:54:00
гулп если а таск ранере,то конечно жив. альтернатив вроде и нет

Артур Евгеньевич
20.03.2018
22:14:17
Парни, перевожу одну старенькую статью и там столкнулся с таким высказыванием:
The application domain model includes interfaces that define its relationships with the outside world in terms of application domain concepts (Cockburn calls these interfaces "ports"). These interfaces are implemented by objects that translate the application domain concepts onto an appropriate technical implementation (Cockburn calls these objects "adapters"). In a distributed system, each process has an application domain model that communicates to other process via ports and adapters.
Что здесь понимается под процессом, как думаете? Разные экземпляры одного и того же приложения или разные(с разной кодовой базой) приложения) - то что мы зовем микросервисами щас

Bohdan
20.03.2018
22:16:07
второе явно
просто связывать инстансы одного приложения через порты и адаптеры нет смысла
никакого скейлинга, один оверхед

Mykola
20.03.2018
22:56:00
второе, но с поправкой на то, что это не обязательно "микросервисы" в теперешнем их понимании
это ближе к actor-model

f4rt~
20.03.2018
22:58:36
скиньте кто-то мою любимую картинку :)
про код на акторах

Sergey
21.03.2018
10:19:25
https://www.sicpers.info/2018/03/why-inheritance-never-made-any-sense/

Google

Bohdan
21.03.2018
10:41:08
прочитал раз, осознал процентов 15 из текста
нужно перечитать

Aleh
21.03.2018
10:42:26
> This is fine, as long as you don’t try to also model the problem domain using the inheritance tree, but much of the OO literature recommends that you do by talking about domain-driven design
?

Bohdan
21.03.2018
10:45:53

Mykola
21.03.2018
10:50:29
> One monkey. One keyboard. Infinite possibilities.
именно да
это я о его прекрасном слоге

Bohdan
21.03.2018
10:51:00
войну и мир написать, например
сложненько он пишет, да

Mykola
21.03.2018
10:51:06
мог бы и человеческим языком писать, но нет же!

Bohdan
21.03.2018
10:51:31
еще, конечно, играет роль то, что тема тоже непростая, но тем не менее

Mykola
21.03.2018
10:52:14
но, если чесно, он днище
он путает понятия