Size: a a a

2021 April 12

🦔

🦔 in phpGeeks
забрать чтоль в бест оф пхпгикс
источник

🦔

🦔 in phpGeeks
хотя не, слишком контекстно
источник

ВС

Владислав Субботин... in phpGeeks
А почему удалённо нельзя тимлидить?
источник

АГ

Алексей Гевондян... in phpGeeks
слишком на личностях)
источник

АХ

Александр Хакимов... in phpGeeks
Потому что я единственный сотрудник работающий удаленно, все остальные в шатате. Наверное по этому.
источник

🦔

🦔 in phpGeeks
возможно
источник

ВС

Владислав Субботин... in phpGeeks
Понятно. Правила аула превыше всего (с)
источник

ВС

Владислав Субботин... in phpGeeks
Но ты сделал верный выбор, нехер подстраиваться под большинство, если ты так не хочешь.
источник

ВС

Владислав Субботин... in phpGeeks
У нас раньше тоже все работали в офисе. Стоило 2-м сильным разрабам перейти на удалёнку и всё, даже "жители" офиса посливались следом.
источник

АГ

Алексей Гевондян... in phpGeeks
в общем то, что ты  там написал - это работало лет 10 назад. сейчас такой подход к написанию кода уже морально устарел
источник

S

SarcasmIO in phpGeeks
крч Санечек, я вернулся, смотри
такое чувство что ты код писал под разным настроением, взять во внимание то, что выше в коде не контроллер, но ты смело туда прокидываешь весь реквест, включая валидацию, хотя невалидные данные в логику попадать априори не должны
ты сначала в конструкторе
делаешь вот так
self::$guzzle = new Client(['verify' => false]);

а потом ниже раз  5 инстанцируешь новый клиент руками, причем постоянно проделывая 3 операции
каст стрима к строке
json_decode его
и collect ради того что бы у коллекции взять потом ->first

у тебя везде у гузлей один и тот же урл только разные экшены, вынеси его в константу или env параметр и передавай как base_uri в газл и неплохо бы что бы сам клиент который прилетает в этот сервис тоже собирался отдельно
больше половины твоих вспомогательных функций являются бизнес логикой какого-то объекта и не должны раскрывать свой стейт наружу
банальные штуки типо for vs str_pad и тд я не говорю

OauthM24Session
откуда я полагаю ты берешь все self::$session->get
так тоже нельзя делать, передавай все что тебе надо таким образом что бы после конструктора у тебя был валидный объект

вынеси все манипуляции с гузлями в условный IntegrationNameWrapper и возвращай оттуда данные
ретрив данных из сторонней системы мало чего имеет с их последующей обработкой и может пригодится потом переиспользовать

попробуй свести все к тому что у тебя есть

Client (знает про урл интеграции и специфические настройки хеддеры и тд)
ClientProvider инкапсулирует в себя работу с интеграцией предоставляет наружу удобный апи для взаимодействия
ClientResponseParser если надо, суть и так понятна
ClientRequestBuilder если требуется какие-то манипуляции сделать перед клиентом собирай реквест для системы там
источник

АГ

Алексей Гевондян... in phpGeeks
хотя я все время забываю, что ларавел разрабы пишут в блокноте.
источник

S

SarcasmIO in phpGeeks
и гоняй данные между ними типизированные, не просто массивчики а обзови их, так формируется домен и смотри на то, какие штуки в нем могут менятся в отрыве от других, такие выноси отдельно, те которые меняются вместе складывай в одну папочку и её тоже обзови как нить
источник

ВС

Владислав Субботин... in phpGeeks
Классный отзыв
источник

🦔

🦔 in phpGeeks
не обижай вскод
источник

🦔

🦔 in phpGeeks
хотя может и правда кто в блокноте ещё пишет
источник

ВС

Владислав Субботин... in phpGeeks
vscode сложно назвать блокнотом
источник

ВС

Владислав Субботин... in phpGeeks
Наверное, речь про npp
источник

АХ

Александр Хакимов... in phpGeeks
Круто, спасибо , действительно согласен полностью со всем написанным.
источник

1

163 plg in phpGeeks
Кто то делал бота в тг?
источник