Clean code is a scum

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

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

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

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

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

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

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

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





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

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

Предыдущие записи блогера :
Архив записей в блогах:
Германия, наши дни. Буквально наши часы. Говорят, что уже заставили снять, но арестовывать владельца магазина или даже штрафовать не стали. Ну, потому что сами понимаете. Одно дело - то, а другое - это. И если кто скажет, что у них там тут, то на самом деле это не там. Такова ...
Washington Capitals (42/36) - Winnipeg Jets (43/34) 4-1 Александр Овечкин сделал дубль (21,22) и до рекорда числа забитых голов в регулярных чемпионатах, установленного Уэйном Гретцки в 1999 году (894 шайбы) "Александру Великому" оставалось всего 92 гола. Он также отдал голевой пас ...
Рядом со зданием Парадного расчета можно увидеть макет легендарного самолета: МБР-2 (Морской Ближний Разведчик Второй) — советская летающая лодка (по кодификации НАТО: Mote — «Соринка»). Самолёт разработан в ЦКБ МС под руководством Г. М. Бериева. Активно применялся в период второй ...
В топе снова висят ступни ног. Но не просто ступни, а с целующих их мужским лицом. Стало завистливо, подумалось, может, хватит блюсти себя, и свои тоже показать. А чтобы был инфоповод, продемонстрирую в очередной раз свой прекрасный вкус. Смотрите, как чудесно сочетаются носки в нежных ...
На работе, разговоры: - Коллега, а ты ментов сажал? - Сажает судья, а я поддерживал обвинение... - И что? - Ну, были приговоры. - А какие? - Разные, подделка административных материалов, подброс боеприпасов. - Это как? - Ну, например, в линейном отделе одному типу было настолько "в лом" ...