@prophp7

Страница 1122 из 1387
F01134H
20.06.2018
10:43:52
Сергей, а можно пример плиз :)

или куда гуглить

Nurik
20.06.2018
10:44:19
Ну так и делают же уже. даже делегирование генераторов есть.

Sergey
20.06.2018
10:44:20
ну на вскидку.... что можно придумать

Google
Sergey
20.06.2018
10:44:38
Ну так и делают же уже. даже делегирование генераторов есть.
ну тип корутины в php в 12-ом году появились, есть amphp и т.д.

но это не отменяет того факта что 99% php разработчиков считают это колдунством и магией

Сергей, а можно пример плиз :)
вот тебе такая задачка.... есть функция robot. Она идет. То есть генерит тебе новые координаты просто своего положения. Вызывающая сторона должна иметь возможность менять направление робота.

дальше уже можно мутить какие-то задачки на мультикурл

Dmitry
20.06.2018
10:46:35
потому что для 99% разработчиков в их работе им не нужно это все ;)

Sergey
20.06.2018
10:46:49
Nurik
20.06.2018
10:46:59
Для парсеров норм идут генераторы. Для краулеров всяких.

Dmitry
20.06.2018
10:47:20
да даже и симфони если... просто задачи все синхронные

Nurik
20.06.2018
10:47:32
Типа ленивость добавляем.

)

Dmitry
20.06.2018
10:49:22
Даже не в этом дело... а в том, что знания асинхронности им ничего не добавит в их работе. Вот информация о каком-нибудь ES - может, а о async - маловероятно ;) И вообще пока 99% не ведает, з/п у 1% растет ;)

Google
Nurik
20.06.2018
10:50:34
Ахах ) общий уровень среднего разработчика php очень низкий.

Sergey
20.06.2018
10:50:42
имхо нехвотает докладов на тему "какие же php-ники тупые"

точнее не так.... "недальновидные" или там "очень узкий кругозор"

но я не очень думаю что есть хоть какой-то смысл инвестировать свое время в подобные меморандумы, поржут и пойдут дальше на yii писать

Nurik
20.06.2018
10:51:49
ES в таком случае тоже мало чего добавит
Почему не добавит ? Там как раз сейчас добавили асинхронные генераторы в 10 ноде. Со стримами удобнее работать стало.

Sergey
20.06.2018
10:52:43
Почему не добавит ? Там как раз сейчас добавили асинхронные генераторы в 10 ноде. Со стримами удобнее работать стало.
я больше про то что инфа про ES принетес в таком случае пользы столько же сколько про корутины. Проблема ж именно в том что люди не зная как работают корутины не могут придумать им применение. А применений масса

Dmitry
20.06.2018
10:52:52
ES позволяет перейти в пониманию, что можно хранить не стейт, а историю

Sergey
20.06.2018
10:53:37
тут вон люди yii любят за крудогенераторы и сонату в симфони юзают, какой к черту ES

Dmitry
20.06.2018
10:54:13
во, видишь... там 99% было, тут уже 90% ;)

F01134H
20.06.2018
10:55:02
не понимаю, как можно любить yii

:)

хотя будь я говнокодером, который любит деньги а не кодить, то возможно и зашло бы

Dmitry
20.06.2018
10:55:32
yii замечательна, хренакс хренакс и работает ;)

Sergey
20.06.2018
10:55:34
во, видишь... там 99% было, тут уже 90% ;)
имхо вопрос подачи. ES обычно подают как "полиглот дата, аналитика, удобна!" и в итоге разводят хайп

а то что это думать надо - это как бы подразумевается но тож php-ники

опасно скармливать неподготовленным людям, которые толком не понимают что такой сайд эффекты, концепты типа ES

это как микросервисы где по итогу есть микросервис базы данных

Dmitry
20.06.2018
10:56:54
ну я скорее про то, что знание про ES в практике рядового программиста скорее пригодится, чем знание асинхронности... глядишь, в следующем проекте, где должна быть хорошо логируемая на изменения сущность, он и попробует что-то подобное для нее сделать

Nurik
20.06.2018
10:58:16
ES это EventSourcing или EcmaScript ? Чёт я запутался.

Google
Dmitry
20.06.2018
10:58:34
EventSourcing

Nurik
20.06.2018
10:58:44
Ясно, спс)

Dmitry
20.06.2018
10:59:11
про Ecma без номера версии странно говорить как-то было бы

Nurik
20.06.2018
11:02:57
Вот я хз, почему бы не использовать C# например для таких целей. Взять какой-нибудь EventFlow например.

Nurik
20.06.2018
11:05:37
nservicebus
Блин, по нему даже книжки есть. )

у людей у которых не один запрос синхронно на процесс приоритеты уже будут чуть другими)
Тут наверное приоритеты другие хотя бы потому, что там где это используется, обычно php не очень подходит под задачи. Ну ИМХО конечно.

Bohdan
20.06.2018
11:10:57
Nurik
20.06.2018
11:13:54
Вообще в первое время очень страшно было после php, что процесс висит в памяти, и хрен знает что там происходит. И вот мне кажется что задачи асинхронности у php разрабов будут возникать чаще, только если он перестанет умирать. Потому что как бы в памяти можно хранить всякий мусор по началу, забить на атомарность операций, чтобы прочувствовать всю боль, когда у тебя асинхронно происходят всякие штуки в приложении.

Sergey
20.06.2018
11:20:20
демоны на пхп уже больше 10 лет пишут

Sergey
20.06.2018
11:20:25
еще с тех пор как 5.3 вышел

Artem
20.06.2018
11:20:29
вы вот про event sourcing-и всякие, а у обычного дно пхп-шника(по себе сужу) проблема вообще добиться хоть какого-то применение ООП, вместо статик функций в классах. Тут на собеседование приходишь, говоришь "хочу ООП, хочу писать тесты", а тебе отвечают, шо нет такой возможности и "вам будет сложно у нас работать" Т_Т

Борис
20.06.2018
11:21:37
демоны на пхп уже больше 10 лет пишут
Не, гата усе брэшуць. По ОНТ такого не передавали, а то я бы знал

Artem
20.06.2018
11:21:43
ну про перезвоним - это всегда так говорят) Хотя не знаю, у меня не такой богатый опыт

Nurik
20.06.2018
11:26:06
в галерах, вообще никогда перехода от кол-ва к кач-ву не происходит. Вот никогда. Поэтому там впринципе рости некуда.

Artem
20.06.2018
11:32:13
Ну потому что это php. Тут просто пока себя сам бить палкой не начнешь, будешь плавать в говне, ковырять всякие богомерзости типа 1c битрикс и так далее.
самому себя ещё как-то можно палкой бить и чего-то добиваться, в меру своих способностей, но навязать окружающим не получится в силу собственной некомпетентности. Во всяком случае у меня не получилось на прошлой работе. А писать по-разному в отрыве от коллектива - плохая идея имхо.

на самом деле меня не жрали как раз за попытки, просто их скорее игнорировали, потому-что чтобы этим заниматься - нужна квалификация и опыт в этом. На самом деле в такой ситуации они даже пожалуй правильно поступали, потому-что квалификации ни у кого нет, а на живом проекте эксперименты ставить никто не даст. Короче, жизнь сложная штука (внезапно!) :D

Google
Artem
20.06.2018
11:38:26
может быть отмазки. Да, нужна мотивация, мотивации не было - это правда и этого никто не отрицал вроде

Maksim
20.06.2018
11:40:45
охёпт) чёт триггер не сработал)

эти ваши async\await, es и прочий модный булшит кабину разрабам проламывают насквозь)

Nurik
20.06.2018
11:45:07
эти ваши async\await, es и прочий модный булшит кабину разрабам проламывают насквозь)
Ну так не нужно это разрабам на php. Кейсов где это может пригодиться — мало, для php разраба. Куда это сувать в магазин, бложик ?

Admin
ERROR: S client not available

Maksim
20.06.2018
11:45:59
вопрос не в том, куда это сувать. А как и зачем это сувать. И вот тут начинаются проблемы

p.s. да, я один из тех мудаков, которые нашли куда всунуть и async\await, и cqrs, и es

Nurik
20.06.2018
11:49:23
Ну так почему сразу мудаков ? Если ты можешь обосновать себе и бизнесу зачем ты это заюзал, и чем это хорошо, то это как бы норм.)

Maksim
20.06.2018
11:50:33
Ну так почему сразу мудаков ? Если ты можешь обосновать себе и бизнесу зачем ты это заюзал, и чем это хорошо, то это как бы норм.)
просто сейчас набежит спецов с воплями "юзай go и жизнь будет прекрасна") так что я сразу обозначил)

Maksim
20.06.2018
11:52:09
Юзай раст))
пхп лучше

ушёл за попкорном)

Nurik
20.06.2018
11:59:56
Юзай раст))
На нем веб пишут ? Просто как бы фреймворк вроде есть. Но хз, что там.

Denis
20.06.2018
12:02:23
что-то там есть)

Батманов
20.06.2018
12:06:24
ребят, а подскажите реальные примеры использования паттерна наблюдатель? Ну то есть почему нельзя явно объявить какое то действие в месте, где событие регистрируется?

Sergey
20.06.2018
12:08:12
и почему нельзя?

регистрируются все же слушатели, события публикуются

Google
Sergey
20.06.2018
12:09:25
ну и лучше будет если ты попробуешь придумать зачем нужен наблюдатель, попробовать сфомулировать какие проблемы он решает и предложить свой вариант толпе. И смотреть реакцию. Будет продуктивнее

Maksim
20.06.2018
12:10:13
И стриггерится Фесор,который отправит гуглить что такое эвент)

Maksim
20.06.2018
12:12:31
Окей, пардон)

Artem
20.06.2018
12:18:58
Если надо проверить имя пользователя при создании на пустоту (правило - длина имени пользователя должна быть > 0) насколько я понимаю - это правило предметной области, а не проверка для сохранения инфраструктурой. То как это сделать? Проверять на входе пришедшие данные от пользователя? Писать в конструкторе проверку и кидать InvalidArgumentException('name is empty')? Но если надо показать сразу все ошибки?

Sergey
20.06.2018
12:21:44
> Но если надо показать сразу все ошибки? продублировать

и еще разок на UI для формы

(если у тебя SPA или мобилок)

Artem
20.06.2018
12:24:26
ага, то есть таким образом предохраняем модель от коррапшена но и удобство пользователю оставляем. Получается 2 разных ответственности - валидация и предохранение модели от коррапшена?

Sergey
20.06.2018
12:25:23
именно так

валидатор валидирует запрос и это правила относятся именно к запросу, а логика предметой области внутри модели оной

в этом и вся разница

дальше уже вопрос насколько ты заморачиваешься

для апишек можно просто исключения кидать и не дублировать правила, всеравно все эти же правила будут продублированы на UI для лучшего UX

Artem
20.06.2018
12:27:33
а вот ещё такой вопрос - что дальше делать с этим вот эксепшеном? По идее он не предназначен для показа пользователю. Это исключительная ситуации попытки повреждения модели, это наша внутренняя ошибка и пользователю в случае чего показываем просто "ой всё плохо"?

Sergey
20.06.2018
12:27:55
да

потому обычно приходится дублировать, просто повторюсь - таргеты валидации различаются

пример более менее понятный - описание необходимых данных для работы юзкейса

Страница 1122 из 1387