🔥

Тред (Лена Рашкован)


Доброго вечера пятницы! Я сегодня не разгибаясь допиливала таски перед отпуском, так что извините, если заскучали. О чем поговорим?
🤔 21.8% Как нравиться дизайнерам
🤔 47.0% Про оверинжиниринг
🤔 31.2% Про Авиасейлс

Ну, поиграли в демократию и хватит

Пусть будет оверинжиниринг. Под этим я понимаю явление, когда реализация идеи настолько излишне сложная, что идею саму уже никак не разглядеть

Иногда это происходит от желания обобщить раньше времени — код обрастает плохо продуманными абстракциями, и черт знает, что там теперь в нем происходит

Иногда от незнания — можно быть просто не в курсе, что в html есть замечательная связка details+summary, которая делает нативную раскрывашку, и начать пилить свою, полную дивов, онкликов и ужаса

Иногда, имхо чаще всего, от использования неподходящего под задачу инструмента (Yes, reduce, I’m looking at you)

Когда на собесе кандидат использует вместо цикла редьюс, понимаю, что сейчас будет весело

Помню, был божественный англоязычный тред, где чувак просил прислать ему примеры кода с редьюсом и переписывал их нормально. Я ссылку проебала, если у кого-то осталась, пришлите мне плз!

Еще можно «изящно решить задачу одной строкой» (мне кажется, поэтому многие неравнодушны к редьюсу), так, что потом никто ничего не поймет без двадцатистрочного комментария

Часто оверинженеры любят регулярные выражения. Ими тоже можно задачу в одну строку решить, а потом кто-то потратит полдня, пытаясь вкурить написанное.

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

Все написанное выше крайне субъективно, если у вас пригорело, сочувствую) Но рада буду обсудить контрпримеры! Уройте меня

Ах да, я сама-то тоже оверинженерка. Причины обычно две — незнание и усталость.

Мой типичный грех — злоупотребление хуком useEffect. Засовываю туда какое-нибудь вычисление, в которое могло быть и в рендере, а потом смотрю на это свежим взглядом и такая «ну бля»

Щас просто ради интереса прошлась по своим PR и встретила свой грех трижды. @kamyshev_code, спасибо за терпение!)
notion image

Расскажите что ли, чем грешите. Злоупотребляете редьюсом? Делаете лишнее, там где не надо? Любите втащить редакс слишком рано и хранить там, в фокусе ли инпут?

All code using array.reduce should be rewritten without array.reduce so it's readable by humans mutes thread