@prophp7

Страница 1151 из 1387
Sergey
04.07.2018
15:22:06
принцип подстановки как бы действует именно на подстановку без изменения кода. Когда у тебя один тип а приходит другой. то есть уже готовый инстанс. То есть ты не можешь нарушить LSP на уровне конструктора

Tony
04.07.2018
15:22:31
об этом я как то не подумал
https://designpatternsphp.readthedocs.io/ru/latest/Creational/Builder/README.html

Bohdan
04.07.2018
15:22:35
require no more, promise no less

@foIIeah может и тебе она лучше зайдёт

Google
Sergey
04.07.2018
15:22:41
F01134H
04.07.2018
15:22:44
На геттер это правило тоже распространяется? Мне геттер из интерфейса убрать для этого типа, который в конструктор прилетает?

Ну, у меня дтошка

Sergey
04.07.2018
15:22:57
только php в такое не умеет

F01134H
04.07.2018
15:23:53
либо убирать тип либо вообще метод?

Sergey
04.07.2018
15:24:14
либо убирать тип либо вообще метод?
убрать тип в чайлде это нарушение LSP

F01134H
04.07.2018
15:24:39
А если оставить тип - интерфейс - не нарушение?

Sergey
04.07.2018
15:24:40
(хотя влияет только факт того, можешь ты инстанс этого типа подставить где юзается базовый или надо instanceof делать)

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

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

Google
Sergey
04.07.2018
15:25:37
иначе - нет, не могут, удалять те методы из базовых типов которые нарушают правила

и это мы еще про инварианты не говорили

F01134H
04.07.2018
15:25:50
Понял, спасибо

когда-нибудь я пойму, что такое инварианты

наверное когда на практике понадобится

Bohdan
04.07.2018
15:29:45
наверное когда на практике понадобится
не уверен, что практика поможет с этим скиллом

Maksim
04.07.2018
15:30:23
как по мне, практика академические скилы чаще убивает)

Artem
04.07.2018
15:33:39
как по мне, практика академические скилы чаще убивает)
если рассматривать практику как то, что делаешь "как сказали", то может быть. А если есть возможность попытаться сделать "как лучше", то всё-таки практика помогает. Всё-таки на практике обычно появляется много вопросов, на которые надо искать ответ.

Bohdan
04.07.2018
15:33:50
зависит от того, думать ли про эти академические штуки на практике)

Maksim
04.07.2018
15:35:08
на практике обычно появляется чувак с плёткой и стройный красивый мир летит в помойку)

Artem
04.07.2018
15:37:11
Прислали тестовое задание - сказал им, что буду писать его неделю :D Интересно, как они отреагируют, если дно-джун будет пытаться сохранять агрегаты в сериализованном виде ;0 Наверное подумают, что я сумасшедший

Artem
04.07.2018
15:40:46
на практике обычно появляется чувак с плёткой и стройный красивый мир летит в помойку)
у меня маленький опыт, но лично у меня проблема была не в том, что чувак с плёткой появляется, а скорее в том, что чувак с плёткой не знает сам на самом деле как это всё по-человечески разруливается. Проблема кадров не только с хорошими низкоуровневыми(в смысле джуниорам) позициями, но и с высокоуровневыми, которые могли бы научить и подсказать.

Maksim
04.07.2018
15:41:09
но эт всё лирика... я тут для себя открыл eap после обращения в багтрекер шторма... блин, за каким хером им аще лицензию оплачиваю))) еап смотрится лучше и баги, которые бесили меня месяцами, пофигшены....

Artem
04.07.2018
15:41:21
не дно джуны тоже так делают
на самом деле я не буду, т.к. думаю это слишком сильно увеличит время разработки. Может потом... Слишком неизведанная территория

Shmaltorhbooks
04.07.2018
15:41:26
еап на месяц только

иногда бывает, что следующий еап за месяц не успевает выйти)

Google
Shmaltorhbooks
04.07.2018
15:41:55
редко, но бывает

Maksim
04.07.2018
15:42:04
еап на месяц только
а, вот в чём вопрос) а нельзя им дать лицензионный ключик и попросить подавиться stable версией?)

Bohdan
04.07.2018
15:43:10
и плагины не в еапы умеют

Maksim
04.07.2018
15:43:22
в еапе, кстати, кложуры на половину заработали) на статик не ругается, но навигация всё ещё не пашет

Shmaltorhbooks
04.07.2018
15:43:24
Bohdan
04.07.2018
15:43:34
в смысле?
там "не во все"

Tony
04.07.2018
15:43:42
эт называется снапшот)
Есть что-нибудь почитать по этой теме? Бестпрактисы какие-нибудь?

Bohdan
04.07.2018
15:43:56
я как - то пробовал - отвалилось штук пять

Maksim
04.07.2018
15:44:10
и плагины не в еапы умеют
хер знает) всё подтянул, обновил и попросил зарестартиться)

Shmaltorhbooks
04.07.2018
15:44:21
у меня тоже с плагинами полёт нормальный

разве что дважды за последние полгода отвалился material theme

Tony
04.07.2018
15:45:33
Maksim
04.07.2018
15:45:44
мать твою... даже тайпхинт object работает

Dave
04.07.2018
15:49:43
Ребзи привет У вас было что композер стопорится на вот этом Loading composer repositories with package information Updating dependencies (including require-dev) Не знаете чего хочет?

Все чистил, все удалял, полностью сносил, выделял память

уже если честно не знаю куда копать - впервые такое.

Dmitriy
04.07.2018
15:50:50
добавить -vvv

Google
Dave
04.07.2018
15:51:29
О сяпки

Resolving dependencies through SAT

Tony
04.07.2018
15:51:47
https://vaughnvernon.co/?p=942
Спасибо. Я это использовал когда-то, но без глубоких теоретических основ) Порой сам видимо доходишь со временем до общепринятых паттернов

Dmitry
04.07.2018
15:53:51
еар тоже как повезет... иногда сильно ломают

Maksim
04.07.2018
15:54:25
еар тоже как повезет... иногда сильно ломают
даже если отбросить в сторону мою сраную наркоманию с кложурами, сраный object могли б в стейбл и пораньше подвезти :(

Dmitry
04.07.2018
15:55:01
у меня вообще ощущение, что последние несколько лет развитие шторма сильно замедлилось

Maksim
04.07.2018
15:55:11
но кложуры всё равно ломанные. Они как-то на шару проскочить с ними решили

Dmitry
04.07.2018
15:55:23
котлин, все дела... куда там до шторма

Admin
ERROR: S client not available

Mykola
04.07.2018
15:56:01
Через апи телеграмма можно узнать username пользователя имея номер телефона?

Artem
04.07.2018
15:57:55
Спасибо. Я это использовал когда-то, но без глубоких теоретических основ) Порой сам видимо доходишь со временем до общепринятых паттернов
сериализация-то по идее не проблема, а вот правильно выбрать агрегаты - это посложнее(у меня вот не получается) + там ещё наверняка куча инфраструктурной лабуды о которой можно только догадываться.

Maksim
04.07.2018
15:58:57
private static function extractQwertyFieldValue(Qwerty $qwerty): int { $closure = Closure::bind( function() { return $this->getSomeQwertyPrivateField(); }, $qwerty, $qwerty ); return $closure(); } на static в еапе не ругается, но метод по прежнему не видит. Их парсер просто сделал вид, что $this его не смущает и всё, на этом фикс закончился. А к чему этот this относится - ему похеру

Mykola
04.07.2018
15:59:08
можно
Спасибо

Artem
04.07.2018
16:00:17
Ну вот да, поэтому я и захотел беспкратисы покурить)
https://channel9.msdn.com/Events/TechEd/NorthAmerica/2014/DEV-B331 вот ещё. Тут про агрегаты относительно понятно. Правда там сабов нет. Некоторые заковыристые предложения моск ломают. Но есть схемки - это помогает

Alexpts
05.07.2018
06:01:14
Предложение для newrelic, которое позволит работать с асинхронным кодом. Может быть есть идеи как реализаовать или улучшить предложение. https://discuss.newrelic.com/t/feature-idea-phpreact-1-process-for-many-connections/56425

Maksim
05.07.2018
06:08:48
Взять amp. Если старт транзакции не возвращает никаких идентификаторов транзакции, то и саму транзакцию в помойку. Она бесполезна

Alexpts
05.07.2018
06:10:12
предложение как раз в этом и заключается, возвращать уникальный ID транзакции, который потом используется при работе с транзакцией

Maksim
05.07.2018
06:10:22
Сам хэндлер не возвращает результат. Он возвращает либо промис в случае с реактом, либо войд в случае с ампом, который преобразует в корутину и резолвит.

Google
Alexpts
05.07.2018
06:10:49
хендлер не важен, это вопрос реализации, это пример

Maksim
05.07.2018
06:11:02
Ну тогда у тебя 3 промиса: старт транзакции, запись и коммит.

Вопрос в чём, если не в реализации? Изи же

Alexpts
05.07.2018
06:12:52
это предложение было, вопроса не было, дописать детали в топик, если есть видение, как улучшить и поддержать в голосовании за фичу, если все так

Maksim
05.07.2018
06:13:43
Фича бесполезная в коде, который не предназачен для асинхронной работы

Alexpts
05.07.2018
06:14:33
Упрощенный пример, да там handle промис должен вернуть и в резолве промиса транзакция должна закрываться

поправлю

Maksim
05.07.2018
06:18:08
call(static function($someData) { yield startTransaction() yield handle($someData)): yield commit(); }, $someData) ); С телефона кодить не ок)

Но в целом я в этой затее смысла не вижу. В 99% приложений луп будет стопариться каждый тик

Мио
05.07.2018
06:47:41
Есть или был Zend Guard , для защиты кода
насквозь дврявый. есть ioncube но тоже его переодически ломают.

Гена
05.07.2018
07:55:52
Есть или был Zend Guard , для защиты кода
Знаю, спасибо, но обфускация не нужна

Sergey
05.07.2018
08:03:48
Знаю, спасибо, но обфускация не нужна
ну так и экономия 20% от размера файлов не особо нужна

$iD
05.07.2018
08:05:17
то чувство, когда "изобрёл" самую лучшую либу в мире и все обосрали

Maksim
05.07.2018
08:10:49
Прост назначение странное)

Мо меньшей мере)

Гена
05.07.2018
08:23:10
ну так и экономия 20% от размера файлов не особо нужна
Я полностью согласен, но бывают исключения

Sergey
05.07.2018
08:30:13
то чувство, когда "изобрёл" самую лучшую либу в мире и все обосрали
человек продал что-то из solution space не объяснив problem space

это нормально - подавляющее большинство продуктов так продаются) тебе мол это просто надо

и что хуже - большинство продукт менеджеров и оунеров так фичи закидыают в бэклог. Типа "ну им нужна кнопка которая выгружает email-ы юзеров!"

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