
Sergey
24.03.2018
09:19:33
больше на ивенты похоже
ну то есть это не вызов процедуры там какой и т.д. это именно отправка сообщений, причем есть вариант делать отправку бродкастом. кто подписался тот и обработал

Uiiuviiw
24.03.2018
09:20:21
вот здесь меня и ломает, что calll сообщением переводят

Дмитрий
24.03.2018
09:20:24

Google

Дмитрий
24.03.2018
09:20:35
Больше ничего нет, в этом суть

Roman
24.03.2018
09:20:53
Посоветуете подкасты по пхп и программированию в целом плз

Sergey
24.03.2018
09:20:59
call - вызов, а сообщения это про message passing - идея которая есть из всех языков только в эрланге
(смолтак мертв так что не считается и там это больше на вызов походит)

Дмитрий
24.03.2018
09:21:49
"Вызов" и "событие" это разновидности сообщений, которые в свою очередь являются более абстрактной сущностью

Uiiuviiw
24.03.2018
09:21:57
аааа... туда вызов метода, но с сообщением?

Дмитрий
24.03.2018
09:22:18
Проблема акторов в том что в них всё генерализовано и их сложно представить без упрощений)

Sergey
24.03.2018
09:22:23

Gio
24.03.2018
09:22:45

Uiiuviiw
24.03.2018
09:23:24
раз нет методов тогда же реально и туда и туда события
это смущает

Дмитрий
24.03.2018
09:23:35
Сообщения

Google

Дмитрий
24.03.2018
09:23:49
Перестань вкладывать в них смысл)

Sergey
24.03.2018
09:23:57

Uiiuviiw
24.03.2018
09:24:44
а когда это описывали обычные с сегодняшнего времени, методы были?

Sergey
24.03.2018
09:25:13
симмула, алгог - по сути там были методы

Дмитрий
24.03.2018
09:25:59
Концепция акторов не появилась единомоментно, и развивалась параллельно прогрессу в языках

Sergey
24.03.2018
09:26:06
все что приписывают ООП в плане терминологии (классы, методы, объекты) было до того как термин ООП появился

Uiiuviiw
24.03.2018
09:26:08
по сути? но не в привычном нам понимании?

Sergey
24.03.2018
09:26:43
почему? метод это ничто иное как процедура
ну и в симмуле (середина 60-х) были и классы и методы
Actor Model это уже где-то 71-ый год, и там свои отсылки
на другие языки (планер)
которые реализовывали схожую концепцию

Uiiuviiw
24.03.2018
09:29:11
короче создаешь класс на вход subject на выход observable, и это будет крутой актор?

Sergey
24.03.2018
09:29:20
нет будет херня полная)

Дмитрий
24.03.2018
09:29:51
не забудь ещё спецификацию как и о чем акторы будут общаться
Актор вообще кстати по одиночке не существует

Sergey
24.03.2018
09:30:20
ну то есть разница, так как я понимаю, в том что smalltalk первых версий, что планнер + влияние проектов ARPA и тд. привели к тому что у людей возникли идеи децентрализованных систем. А вот то что мы сегодня имеем в большинстве своем - старые добрые наследники идей первых языков вроде алгога, централизованные (единый центр - main рутина)

Uiiuviiw
24.03.2018
09:30:41
почему? туда сообщения, там слияние и очереди на выходе

Дмитрий
24.03.2018
09:31:12
По поводу событий выше, почему сообщения некорректно ими называть: событие — это конкретное понятие, обозначающее доставку информации о каком-либо уже произошедшем факте, то есть событие нельзя "отменить", так как это уведомление пост-фактум, с ним есть лишь варианты "узнать о случившемся" и "не узнать". Сообщения же могут описывать гораздо более широкий спектр концепций, служебный блок для реализации всего вышеупомянутого

Google

Uiiuviiw
24.03.2018
09:32:52
это да, тогда таск или действиее
а методов в акторе не вообще? там сигналы?
или компонуется цепочка при помощи спецификации?
спецификация же работает с коммандой и тасками?
чат не очень подходит для обсуждения. мне то кажется что вы все сказанное опровергаете, типа делаете не так, а затем говорите свое мнение, которое я понимаю так как я и говорю.
у вас столько знаний писали бы статьи об акторах и публики их на обсуждение

Дмитрий
24.03.2018
10:03:47
Тема довольно объёмная, одних интерпретаций понятия вон сколько)

Grigoriy
24.03.2018
10:12:01
добрый день граждане, у кого-нибудь есть время на поговорить о моделях как способе управления данными?

Uiiuviiw
24.03.2018
10:26:55
время ни у кого нет, но вы спрашивайте, даже я немного в этом могу помочь
только сразу уточните что за приложение и какие данные, точнее это просто инфа или данные предметной области

pew
24.03.2018
10:34:42
так смешно короч читать, челики сыпят абсракциями, никто конктретного ничего не сказал по тем полторам минутам что я вчера голосом сказал, только умничание, бугагага

Aleh
24.03.2018
10:35:57
Так ты ничего конкретного не сказал, тебе ничего конкретного и не ответили

Alex
24.03.2018
10:36:37

Uiiuviiw
24.03.2018
10:37:05
а так и есть сложно в таком формате..

Aleh
24.03.2018
10:37:14
Ну мол, давайте код
И будем его конкретно мучать)

Uiiuviiw
24.03.2018
10:37:47
но каждый раз откладывается что-то и это что-то

Grigoriy
24.03.2018
10:38:18
я хотел бы поговорить про модели если не сложно

Google

Grigoriy
24.03.2018
10:39:17
проблема такая
когда у меня есть большой запрос в базу тот этот запрос зависит от числа входных данных
где-то удобнее WHERE фильтровать, где-то сначала inner join сделать
соответственно я подумал что стоит разбить все запросы в программе на разные методы, каждый в своем классе

pew
24.03.2018
10:40:46

Grigoriy
24.03.2018
10:40:47
но разновидностей одного запроса становится так дохрена, что я устал придумывать названия функций вида
get_country_code_by_city_and_zip_if_zip_is_not_null_ja_krutoi_programmist
пришло ощущение что разбивать нужно сам запрос, используя ORM-ку
function withCity($stmt) {
return $stmt->addWhere()->orderBy();
}
но как правильно это организовывать чтобы голова отпустила, есть у кого мнение?

Елнур
24.03.2018
10:44:21
я в основном использую паттерн Criteria

Igor
24.03.2018
10:46:22

Grigoriy
24.03.2018
10:47:47
ну да я понял как разрабы додумались до AR
active-record

Елнур
24.03.2018
10:48:06
я в основном использую паттерн Criteria
Например:
CountryCriteria:
public $id
public $code;
public $name;
public $zip;
public $zipIsNull;
public $orderBy;
public $offset;
public $limit;
CountryCriteriaMatcher:
public function getResult(CountryCriteria)
public function getArrayResult(CountryCriteria)
public function getCount(CountryCriteria)
public function getIds(CountryCriteria)

Grigoriy
24.03.2018
10:48:08
они воткнули что запросы касаемые одного типа данных должны быть где-то рядом, в папке, а лучше в файле
вот и появилось слово Model
состоящее из кучи разных реализаций - репозиторий туда, критерию туда, комманд-квери сепаратор туда
и вот такое что-то вышло - назвали модель
Елнур - про второй класс интересно - как его понимать?
ты на вход подаешь заранее известный обьект с полями

Google

Grigoriy
24.03.2018
10:50:22
а потом пишешь запрос от этих полей верно?
ну и потом получается как... если у меня на вход 4 параметра пришло заполненных - запрос один будет. 3 пришло - уже попроще будет
формально говоря я пришел к тому что ты называешь Критерия

Елнур
24.03.2018
10:51:34

Grigoriy
24.03.2018
10:51:35
у меня тоже комманда на вход принимает определенный обьект и с другими просто не работает
ну это я понимаю
отдельно count запрос, отдельно result
но в одном файле что удобно
спасибо
а что делать с самим result запросом
в контексте реляционной базы

Елнур
24.03.2018
10:52:46
а внутри CountryCriteriaMatcher - могут быть свои приватные функции, которые собирают запрос

Grigoriy
24.03.2018
10:52:47
со связами и джоинами
его то как разбивать
воот это мне и интересно
как его бьют чтобы умно получалось

Елнур
24.03.2018
10:53:16

Grigoriy
24.03.2018
10:53:35
шо такое у вас ЭнтитиМенеджер?
типичный DI?
ну типа - дай синглтон - на держи?