@oop_ru

Страница 656 из 785
Denis
26.05.2018
09:47:12
Не понял вопрос

Sergey
26.05.2018
09:47:42
Эм?
ну ты сказал - "тайпхинты это польза в процессе разработки"

> а не ядром языка в этом случае у тебя будет вечный рассинхрон в том кто как что готовит.

Google
Denis
26.05.2018
09:48:44
ну ты сказал - "тайпхинты это польза в процессе разработки"
Да. Это возможность в нормальной ide получить автодополнение, подсветку и прочие плюшки кодинспектора

Denis
26.05.2018
09:49:27
И сейчас их нет
Ты в чем пишешь код?

Aleh
26.05.2018
09:49:36
В шторме

Sergey
26.05.2018
09:49:37
Да. Это возможность в нормальной ide получить автодополнение, подсветку и прочие плюшки кодинспектора
давай так, вот в семерке появился тайпхинт для возвращаемых значений и для скаляров. Ты этим пользуешься? Это можно было делать через phpdoc. так зачем по твоему их добавили?

Aleh
26.05.2018
09:49:37
Если пых

Denis
26.05.2018
09:49:45
И там нет?

Aleh
26.05.2018
09:49:55
И там нет?
На днищенском уровне

Sergey
26.05.2018
09:50:09
И там нет?
опиши мне массив где ключ строка а значение User

и что бы шторм все мог подсказать

Aleh
26.05.2018
09:50:44
И желательно чтобы типы выводил, а не на каждый чих док коммент писать

Sergey
26.05.2018
09:50:51
или - задача со звездочкой - опиши мне массивчик с ключами ([id: string, name: string]) что бы работал автокомплит

Google
Aleh
26.05.2018
09:51:16
не ну шторм худо бедно выводит
Ну только топорные случаи

Мой падаван тоже выводит)

Sergey
26.05.2018
09:51:40
ты даже можешь заморочаться, написать свои функции которые уменьюшают количество вариантов в пределах функции и через их систему метаданных описать типы

Denis
26.05.2018
09:51:53
опиши мне массив где ключ строка а значение User
Описание структуры массива действительно хромает. Но во-первых это часто решается плагинами (для того же пимпла есть отличный), а во-вторых это, кмк, разумнее и проще решить расширением того же пхпдока

Denis
26.05.2018
09:53:23
И желательно чтобы типы выводил, а не на каждый чих док коммент писать
Не вижу в этом плохого. Особенно с учётом отслеживания ид-ёй цепочки

Sergey
26.05.2018
09:54:20
Так он умеет
он умеет ровно столько сколько он умеет. вон введут в стандарт phpdocumentator описание массивчиков - и... что? пока разработчики шторма не реализуют поддержку оного не будет у тебя никаких комлитов.

Denis
26.05.2018
09:54:21
Есть проект на старом сайлексе и первом пимпле. Отлично подсвечивается и автодополняет

Sergey
26.05.2018
09:55:11
Есть проект на старом сайлексе и первом пимпле. Отлично подсвечивается и автодополняет
то есть ты предлагаешь померяться кто на чем пишет и у кого проекты больше?)

Дмитрий
26.05.2018
09:55:27
У него просто нет проблем

Дмитрий
26.05.2018
09:55:36
Можно порадоваться ?

Denis
26.05.2018
09:56:10
то есть ты предлагаешь померяться кто на чем пишет и у кого проекты больше?)
Нет. Всего лишь показал, что даже в не самом удобном исходном материале обсуждаемые фичи работают

Sergey
26.05.2018
09:56:36
ну то есть я не очень понимаю твою позицию: - ты не разработчик php и ни тебе поддерживать сорсы php - ты не пользуешься благами статической типизации (до уровня array<mixed, mixed>) и в целом тебе комфортно - окей, никто не заставляет тебя юзать новые фичи языка. - добавление дженериков позволит интерпритатору знать больше о том что он выполняет, так что в контексте какого-нибудь JIT может быть и профит по производительности

Нет. Всего лишь показал, что даже в не самом удобном исходном материале обсуждаемые фичи работают
"не самом удобном" - это каком? там где есть плагины написанные на java и чуть что надо допиливать?

да и потом о каком именно комплите в мимпл ты говоришь? типа подсказки $pimple->get()'?

ну то есть ты видимо не понимаешь основной проблемы....

ну и да, чисто для статистики - с какими еще языками ты плотно работал?

Google
f4rt~
26.05.2018
10:05:29


Denis
26.05.2018
10:06:17
ну то есть ты видимо не понимаешь основной проблемы....
Ок, уточню свою позицию и изначальный вопрос, потому что видимо выразил их не достаточно просто. Позиция: Пользу дженериков для повышения качества кода я не отрицаю. Но считаю её не достаточным аргументом для утяжеления/замедления языка. Так же считаю, что это задача относящаяся к дисциплине/уровню разработчика и возможностям его инструментария. Вопрос: есть ли у дженериков какие-то другие преимущества, которые я не заметил и которые не относятся к удобству разработки?

Denis
26.05.2018
10:07:47
Sergey
26.05.2018
10:08:00
Любые дополнительные проверки увеличивают время выполнения кода
если проверки выполняются ДО выполнения - не увеличивают

Sergey
26.05.2018
10:08:59
Denis
26.05.2018
10:09:20
> Но считаю её не достаточным аргументом для утяжеления/замедления языка. так а в чем утяжеление/замедленее?
И все же... Если не обсуждать сейчас мою позицию, это все-таки субъективный момент, а ответить на вопрос. Есть ли у дженериков какие-то явные преимущества не относящиеся к качеству кода?

Sergey
26.05.2018
10:10:43
И все же... Если не обсуждать сейчас мою позицию, это все-таки субъективный момент, а ответить на вопрос. Есть ли у дженериков какие-то явные преимущества не относящиеся к качеству кода?
дополнительные возможности по интроспекции (ты же любишь автоконфигурации?), больше выразительность (я не про коллекции сейчас а в целом про любые варианты контейнеров данных, трансформеры и прочие сериалайзеры)

Maksim
26.05.2018
10:11:23
блин... серьёзно, люди в пхп обсуждают замедление кода от дженериков?) можно подумать он без них ракета)

Sergey
26.05.2018
10:11:33
будет ли пользоваться JIT (который будет в php8) преимуществами дополнительной интроспекции - это вопрос к разработчикам этого JIT. Но есть мнение что если на вход будет подаваться array<string> а не array то он может более специализированный код нагенерить

Sergey
26.05.2018
10:11:52
ну то есть вариант с интроспекцией и автоконфигурацией на основе этого для тебя не аргумент....

можно много бойлерплейта поудалять

что до ущерба производительности - стоимость проверки foo(array $bar) и foo(array<string> $bar) в целом одинаковая.

Sergey
26.05.2018
10:15:41
Услышал, но хотелось бы ещё доводов.
типа что можно еще с интроспекцией творить?))

Adel
26.05.2018
10:16:42
Услышал, но хотелось бы ещё доводов.
то что это с jit позволит увеличить производительность - аргумент?

Google
Sergey
26.05.2018
10:16:58
ну это все вытекает из возможностей интроспекции

Denis
26.05.2018
10:17:05
типа что можно еще с интроспекцией творить?))
Нет, просто интроспекция != дженериков, разве нет?

Sergey
26.05.2018
10:17:14
ну мол.... интроспекцию можно делать и без дженериков?

Maksim
26.05.2018
10:17:59
да блин... джинерики позволят с лёгкой душой выкинуть четверть кода из проекта) в чём причина их не любить-то?)

Sergey
26.05.2018
10:18:19
да блин... джинерики позволят с лёгкой душой выкинуть четверть кода из проекта) в чём причина их не любить-то?)
ну он не понимает как да и возможно в его случае он профита реально не получит

основной аргумент - сейчас у тебя нет возможности описать параметризованные типы. Вообще. Даже в phpdoc. Только если свой формат и свое поведение выдумывать (как это сделали в phan/psalm). Дальше вопрос понимаешь ли ты что такое параметризованные типы

а как много у тебя в проектах кода который по факту работает (мог бы работать) с параметризованными типами, зависит от твоей "архитектуры". У меня такого кода много. Во фреймворках такого кода много.

Maksim
26.05.2018
10:19:40
ну вот мне не особо нравится идея со своими форматами. Сейчас по коду разбросано говно для псалма, скрутинайзера, пхпюнита и штормовской поделки... напрягает

Sergey
26.05.2018
10:20:09
в таких вещах очень важен единый источник правды

Артур Евгеньевич
26.05.2018
10:20:48
Артур Евгеньевич
26.05.2018
10:21:23
lua?
Хз с ним не видел бенчмарков на самом дел

Дмитрий
26.05.2018
10:21:47
Пока вы висите в вашем евент лупе, пхп уже отстрелялся и умер

Maksim
26.05.2018
10:21:53
та не) пхп умирающее говно) ток бложики на битриксе пилить)

Дмитрий
26.05.2018
10:22:03
От безысходности

Maksim
26.05.2018
10:22:20
в таких вещах очень важен единый источник правды
а вот сейчас и не понятно кто им выступает... и чем дальше, тем хуже.

Google
Артур Евгеньевич
26.05.2018
10:22:22
Sergey
26.05.2018
10:22:30
Пока вы висите в вашем евент лупе, пхп уже отстрелялся и умер
https://i.redditmedia.com/sCosRQG-B43qL6O9_lVHJAnK4cZdiSF96dPMrqj_DAw.jpg?w=320&s=c5249938d372ea56811dbfe9408cf5b9

Denis
26.05.2018
10:22:44
та не) пхп умирающее говно) ток бложики на битриксе пилить)
некоторые компании с тобой не согласны)

Sergey
26.05.2018
10:22:51
Нет. Пхп хороший
в тебе говорит стокгольмский синдром

Maksim
26.05.2018
10:23:15
некоторые компании с тобой не согласны)
http://iscience.ru/wp-content/uploads/2015/12/sarcasm21.jpg

Sergey
26.05.2018
10:24:06
Нет. Пхп хороший
я не знаю людей которые хорошо знают свой язык и могут считать его "хорошим". "неплохим" - да, но "хорошим" - нет.

Артур Евгеньевич
26.05.2018
10:24:19
Меня в пыхе больше всего ебет отсутствие стандартных структур данных и суперуниверсальность стандартного массива, чт опри наличии больших данных превращается в пиздос

Sergey
26.05.2018
10:24:22
ну то есть это вопрос о самокритике какой-нибудь

Артур Евгеньевич
26.05.2018
10:24:29
К остальному я привык

Maksim
26.05.2018
10:24:31
нету плохих языков, нету хороших...

есть инструменты и задачи :)

Denis
26.05.2018
10:24:41
да лан) в плане быстро\качественно\дешево пхп неплох)

Maksim
26.05.2018
10:25:19
ну вот я тож структурный тайпинг хочу) как в го)
коль уж пиздить из го, закажем ещё горутинки)

Denis
26.05.2018
10:25:41
неплох - да, но далеко уже не лучший
а что значит лучший язык?)

Артур Евгеньевич
26.05.2018
10:25:45
да лан) в плане быстро\качественно\дешево пхп неплох)
В плане устроиться на работу с заибись зп при наличии минимума знаний так вообще без конкурентов)))

Sergey
26.05.2018
10:25:53
а что значит лучший язык?)
тот на котором ты еще не пишешь

Артур Евгеньевич
26.05.2018
10:26:01
Maksim
26.05.2018
10:26:03
тот на котором ты еще не пишешь
и никогда не станешь)

Страница 656 из 785