Clean code is a scum

топ 100 блогов live1307.05.2023 Когда над кодом трудится несколько человек, да и даже один человек, всегда хочется его как-то упорядочить. Чтобы было единообразно и не как попало.
И когда я только начинал что-то делать в команде всегда предпринимались попытки ввести codestyle и его придерживаться.
В сети уже было много рекомендаций как это делать и были в числе прочих статьи какого-то Дади Боба.
Мне в целом нравилось и я применял где можно кроме совсем прототипов, не предназначенных для добавления в какую-то кодовую базу.

Но потом что-то пошло не так. Любители меряться длиной органов на конференциях и получать за это приглашения на новые конференции не могли успокоиться и постепенно придумали идею Чистого кода (Clean Code). Наверное когда-нибудь об этом будут вспоминать как о увлечении организовывать все в иерархии классов в начале-середине 90-х. Но пока последние лет 10 мы живем (а иногда даже выживаем) в этой парадигме.

Что же это такое? Пожалуй что благое начинание, которое постепенно превратилось в культ. Если взять некоторые рекомендации, то в них нет ничего плохого. Но если за дело возьмется культист этого метода, то вскоре в коде будет сложно разобраться не только вам, но и ему самому. Благо пример был перед глазами.

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

Когда реальных обоснованных доводов для конференций стало не хватать, были придуманы совсем абстрактные максимы.

Больше всего мне нравятся заявления о том что код должно быть удобно читать как книгу. Но кто-нибудь читает код как книгу? Я нет. И в метро не видно людей, которые сидят читают код вместо книг.
От кода хочется понятности чтобы в нем было удобно разобраться. А требование разбивать все на мелкие функции прямо противоречит удобству чтения. Потому что это скорее походит на книгу в которой сплошные отсылки между страницами. А ведь код зачастую нужно не просто прочитать, а нужно понять что происходит на каждом шаге выполнения. И не стоит забывать что чужой код обычно читается во время code review в git или его аналоге, где перескакивать из функции в функцию особенно неудобно. А если дело идет о интерфейсах и абстракциях то все еще хуже.

К чему это я собственно вспомнил. Тут просто на youtube около месяца назад выложили одно хайповое видео о том что код может быть настолько чистый, что в нем не разберется не то что человек, а даже компилятор и в результате он даже будет медленнее выполняться. Утверждение скорее хайповое и если и верное, то лишь от части. Потому что многое зависит от языка и компилятора. Но ради хайпа имеет такое же право на существование как и сам "чистый код".

А вот и всякие реакции на видео.





Пусть сами авторы реакций настроены скептически, но комментарии под видео в целом радуют. Похоже люди осознают мошенничество с чистым кодом. А там глядишь и начнут его культистов и фанатиков по голове клавиатурой бить. Ложные практики отомрут и заживем. А там гляди и аджайл отвалится. Может и качество ПО повысится.

Оставить комментарий

Предыдущие записи блогера :
Архив записей в блогах:
Никакой все эти торговые центры - забиты барахлом, по изумляющим ценам, те футболки, которые в Германии стоят 29.99, а по распродаже 19.99 продают на канарах по 89.99 и ...
Про хвосты в поле хотела рассказать на примере спарринга двух печориных. Каждый из них ставил своей целью - не столько сиюминутную победу, сколько возможность привязать Белле побольше хвостов. Многие делают это интуитивно, когда пытаются при расставании обвинять второго и ...
Леонард Норман Коэн (Leonard Norman Cohen; 21 сентября 1934, Монреаль, Канада — 7 ноября 2016, Лос-Анджелес, США) — канадский поэт, писатель, певец и автор песен. Песни и поэзия ...
Иду на работу, время 17-20 местное, а над головой, мягко шурша двигателями заходит на посадку первый серийный Су-30М2, который сегодня выполнил свой первый полёт. Первая серийная машина для родных ВВС за почти 15 лет работы на КнААПО! За это стоит ...
На пресс-конференции 23 декабря Владимир Владимирович заговорил о причинах демографического спада. Глава государства пояснил, что с этой проблемой сталкиваются все постиндустриальные страны. «Образование, карьера, а потом ребенок. И это уже к 30 годам. А там уже о втором не ...