Size: a a a

JavaScript.Ninja

2021 April 19

M

Maksym in JavaScript.Ninja
Так у каждого свой смак ) , кому то нравится , кому то нет )
источник

VK

Vladimir Klimov in JavaScript.Ninja
Посмотрите презентацию хуков от Абрамова на одной из конференций, там он говорит о проблемах, которые решают хуки
У хуков много недостатков, не везде удачное апи
Но даже это лучше классов)
источник

IK

Illya Klymov in JavaScript.Ninja
невозможность нормально типизировать - это претензии к тайпскрипту :)
источник

IK

Illya Klymov in JavaScript.Ninja
я все еще каждый раз огорчаюсь что хуки в реакте противоречат тому, что учат "со школьной скамьи"
источник

IK

Illya Klymov in JavaScript.Ninja
что чистые функции это хорошо
источник

VK

Vladimir Klimov in JavaScript.Ninja
Почему они не должны противоречить?
Это же апи библиотеки...
источник

VK

Vladimir Klimov in JavaScript.Ninja
Хотя да, это я бы тоже отнёс к не очень удачному дизайну
Вот эти "правила хуков"
источник

M

Maksym in JavaScript.Ninja
Не , ну как по мне на ваниле js на класах писать лучше всех, без библиотек всяких ) так для себе )
источник

AM

Alex Makarov in JavaScript.Ninja
гемор с this лишает настройкой бабеля чтобы он стрелочки биндил по дефолту. Проблемы с непониманием что это за this такой у начинающих разрабов бывают, согласен. Но мне кажется концепцию this легче и полезнее понять чем тонны того что приносят хуки.
невозможность нормально типизировать - ну как сказать, зависит от того насколько строго Вы используете тайпскрипт. Мы - не оч строго, текущих инструментов достаточно.
опять же тонны хоков - вот зависит от кодовых баз. Где-то это очень болит, где-то не очень. У меня не очень болит.

Вообще единственный аргумент который мне не удалось разбить во внутрикомандных спорах - к сожалению это "генеральная линия партии". От этого увы не денешься и на хуках писать надо хотя бы чтобы потом на собесах не краснеть
источник

II

Ilya Izilanov in JavaScript.Ninja
стрелочки портят перфоманс потому что идут в собственные свойства компонента а не в прототип
источник

AM

Alex Makarov in JavaScript.Ninja
цифры!
источник

II

Ilya Izilanov in JavaScript.Ninja
как и хоки тоже портят перф, потому что глубже деревья
источник

VK

Vladimir Klimov in JavaScript.Ninja
И настроение)
источник

IK

Illya Klymov in JavaScript.Ninja
пруф пожалуйста
источник

D

D M in JavaScript.Ninja
А вот это прям очень интересно ) Хотелось бы поподробнее
источник

AM

Alex Makarov in JavaScript.Ninja
я помню когда-то давным давно у меня был начальник который запрещал мне писать .map и .filter потому что он сильно медленее for циклов.
Но разумеется там на проекте была написана своя сырая и глючная версия жуквери, свой тормозной сборщик (вебпак уже появился но еще не был стандартом де факто), все манипуляции с дом делались ручками и криво.
источник

AM

Alex Makarov in JavaScript.Ninja
до хуков любимый вопрос всяких не вполне фронтовых чуваков на собесах был "а почему биндить хендлеры в конструкторах вредно". Потому что кто-то где-то написал что это плохо влияет на перформанс и ужасная практика. Я помню после одного собеса разозлился и мерил цифры на боевом проекте. Я их разумеется уже не помню, но было это экономией на спичках.
Оно может и влияет на перформанс, но положа руку на сердце, какого порядка это фактор в перформансе? Вот про стрелочки чувствую так же, ни разу при профайлинге не упирался в них
источник

II

Ilya Izilanov in JavaScript.Ninja
источник

II

Ilya Izilanov in JavaScript.Ninja
с мапом кстати неочевидно что медленнее, мы же можем заранее аллоцировать массив нужной длины
источник

AM

Alex Makarov in JavaScript.Ninja
это было действительно медленее одно время, именно не принципиально а с точки зрения реализации, много лет назад. Но я не уверен что было медленнее во время когда я говорю и не было узким местом уж точно.
источник