Чистый код - не значит правильный | Clean code, паттерны, лучшие практики | Podlodka Podcast

Поділитися
Вставка
  • Опубліковано 8 сер 2024
  • Когда-то давно Роберт Мартин (он же “Дядя Боб”) популяризовал словосочетания “Чистый код” и “Чистая архитектура”. С тех пор не утихают споры, а что же именно он под всем этим подразумевает. Прошло несколько раундов обсуждений, и уже выросло поколение разработчиков, которые говорят, что рекомендациям Дяди Боба ни в коем случае нельзя следовать.
    А значит пришла пора нам самим разобраться с тем, что такое Чистый Код! А помогает нам в этом Кирилл Мокевнин из Hexlet.
    ❓ Хочешь обсудить выпуск или задать вопрос эксперту? Вступай в наш Telegram-чат: t.me/podlodka
    📰 Не любишь чаты, но хочешь оставаться в курсе дел и прокачивать свой IT кругозор? Подписывайся на наш Telegram-канал: там публикуются анонсы новых выпусков, а в комментах идут ценные и горячие обсуждения! 5 тысяч опытных IT-специалистов уже с нами: t.me/podlodkanews
    Полезные ссылки:
    - Телеграм-канал Кирилла:
    t.me/orgprog
    - Ютуб Кирилла:
    / @mokevnin
    - Твиттер Кирилла
    / mokevnin
    - AASM - DSL для конечных автоматов в Ruby
    github.com/aasm/aasm
    - Доклад Андрея Аксенова "Снесите это немедленно"
    • Андрей Аксенов - Снес...
    Тайм-коды:
    00:00 О чём выпуск?
    07:30 Влияние книги "Чистый код"
    19:51 Что же такое чистый код
    26:41 Соответствие стандартам и ожиданиям
    33:35 Когнитивная нагрузка и чистота кода
    37:25 Важность понятийного аппарата
    42:30 Комментарии к коду и пуллреквестам
    46:20 Именование переменных
    50:02 Разделение функций
    01:00:50 Управление побочными эффектами
    01:07:05 Конечные автоматы и их использование
    01:21:20 Паттерны и их применение
    01:31:45 SOLID и его влияние на код
    01:39:45 Влияние чистоты кода на производительность
    01:47:24 Влияние языков программирования на чистоту кода
    01:58:25 Оценка кода на чистоту
    02:08:10 Подводим черту
  • Наука та технологія

КОМЕНТАРІ • 64

  • @user-zu3im3rc2f
    @user-zu3im3rc2f Місяць тому +34

    Когда я вырасту, то хочу быть таким же крутым как Кирилл, только мне уже 35 :(

    • @yet300
      @yet300 Місяць тому +1

      Мне 21 и тоже так думаю😅

    • @garikdjan6266
      @garikdjan6266 Місяць тому +1

      надо было начинать учить SOLID в 11 лет

    • @phyllobolus
      @phyllobolus Місяць тому

      Когда вырастет борода.

    • @alexjegor
      @alexjegor Місяць тому +2

      Никогда не поздно

  • @oeaoo
    @oeaoo Місяць тому +3

    На определенном этапе осознаешь что чистота кода - плохая самоцель. Достаточно чистый код - вот это да. А понимать ту самую "достаточность" - вот где сила.

  • @ArcadeMdns
    @ArcadeMdns 29 днів тому +4

    Как фсм проще, чем многие думают, так и принцип лисков проще, чем звучит. Оверрайды не должны ломать работу программы. Используется примерно всегда

  • @spacerecluse
    @spacerecluse 23 дні тому +3

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

  • @andrewskripko2311
    @andrewskripko2311 21 день тому

    Моё уважение этому господину. Слушая как он объясняет сложные вещи простыми словами - понимаешь что он все понимает

  • @user-dc8us2ci4n
    @user-dc8us2ci4n Місяць тому +2

    Мокевнин это всегда топ, спасибэйро!!!

  • @TheRedbeardster
    @TheRedbeardster Місяць тому +4

    Кирюха изобретает монады, пайплайны, тройки Хоара и спеки на функции :) Кирюха молодец! :)

  • @ivankartashev7998
    @ivankartashev7998 Місяць тому +1

    Отличный получился выпуск, спасибо🙏

  • @FigisBadralov
    @FigisBadralov 24 дні тому

    Я ни на одном проекте не видел документ Стандарты Разработки. В нем приводится глоссарий, как мы бустрапим новые проекты, как мы именуем proto, как бранчуемся, какие среды, как апрувим комиты. И все в том же духе. Документ без воды, страниц на 20-30. Много коммуникационных проблем будет решено!!!

  • @Dmitrijserg
    @Dmitrijserg 29 днів тому

    Шикарный видос, спасибо большое, Кирилл - мощь, конечно

  • @kselnaag2482
    @kselnaag2482 Місяць тому +3

    Чистый и никому не нужный - идеальное текущее описание меня =D

  • @АнтонТрофимов
    @АнтонТрофимов Місяць тому

    Кирилл как всегда крут!) Послушал с кайфом!

  • @user-uc1ec4dd8i
    @user-uc1ec4dd8i Місяць тому

    спасибо большое за выпуск, было интересно!

  • @TheLevius
    @TheLevius Місяць тому

    Хороший выпуск, классный гость

  • @hurricane-rus
    @hurricane-rus Місяць тому

    Использование статусов для управления состоянием объектов - отличный подход.
    Но это у меня точно не связывается с конечным автоматом, который для меня какая-то абстрактная научная штука)

  • @Andruxxxaify
    @Andruxxxaify Місяць тому

    отличный подкаст.
    один из вопросов на одном из собесов - "какой из паттернов реализует одну из букв SOLID - например O". ну и в целом главные требования - знание абсолютное с применением в коде и код ревью SOLID DRY KISS YAGNI и всех паттернов. я в целом понял, что что-то там не то...

    • @34shadows
      @34shadows 7 днів тому

      А что не так? Не нужно знать и уметь использовать принципы SOLID? Нужно, при том что обычно мы их используем, не зная об этом

  • @Ru.Ubububu
    @Ru.Ubububu Місяць тому +1

    Код Мартина можно посмотреть на гитхабе, он об этом пишет в своих же книгах. Например, Fitnesse, написанный на Java

  • @user-ox9uf5tt5j
    @user-ox9uf5tt5j Місяць тому

    Не увидел в ссылках про доклад, о котором Кирилл говорил в конце. Так вот, доклад: «Снесите это немедленно» - Аксенов

  • @v1aadev
    @v1aadev Місяць тому +4

    Так. Прекрасные Катя и Женя, легендарный Кирилл, горячая тема, но лайк отгружен до просмотра, даже если в нём будет нещадно подбито моё личное объективно верное ощущение чистого кода!

  • @garikdjan6266
    @garikdjan6266 Місяць тому +2

    юзал FSM в бизнес логике до того, как это стало мейнстримом :) я выходец из embedded programming и любую систему/процесс воспринимаю как бесконечный цикл с переключением состояний ) в совеременных реалиях это можно назвать domain events

    • @ChannelCheesecake
      @ChannelCheesecake Місяць тому

      В ФП Continuations и Continuation-Passing Style - обобщение автоматного программирования - существует где-то с середины прошлого века

  • @user-zr4bz4mn5g
    @user-zr4bz4mn5g Місяць тому +3

    Ссылка на тг канал Кирилла будет?

    • @watcher750
      @watcher750 Місяць тому +2

      Организованное программирование

    • @PodlodkaShow
      @PodlodkaShow  Місяць тому +1

      Добавили в описание к видео!

  • @nikitarusin2489
    @nikitarusin2489 29 днів тому +1

    Чтобы разблокировать персонажа Кирилл Макевнин нужно дослушать до 25й минуты

  • @OpenSR88
    @OpenSR88 2 дні тому

    Да назовите это состоянием и все, у меня код игровой на ecs подразумевает набор состояний, как для игрока в целом так и для элементов общего состояния, и никто такого не боиться, типа норм.

  • @johnsandwich6726
    @johnsandwich6726 Місяць тому +4

    ощущение поле выпуска, что все писали и пишут неправильно, но только Кирилл знает как надо )))
    Паттерны можно не учить, аббревиатуры неправильные, вообще все лучшие практики прошлых лет не то - Кирилл наш кандидат, приходите к нему, он научит 🙂🙂🙂
    P.S. на телегу Кирилла подписался 🙂

    • @spacerecluse
      @spacerecluse 23 дні тому

      а я отписался 😀

    • @johnsandwich6726
      @johnsandwich6726 22 дні тому

      @@spacerecluseвозможно и так поступлю ) пока наблюдаю

  • @metasta3a
    @metasta3a 2 дні тому

    Читаю книгу гроккаем алгоритмы, написана индусом, противоречит себе через каждые 2 страницы, думаю, это его фишка, не советую😂

  • @user-ht4jk2wf4u
    @user-ht4jk2wf4u 17 днів тому

    ифы vs конечные автотматы - "было бы все немножко по-другому". И какие преимущества были бы у автоматов?

  • @grulex411
    @grulex411 14 днів тому

    Забыл Эванса посоветовать, хотя в процессе ссылался)
    (Не является инвестиционной рекомендацией)

  • @Egorka
    @Egorka Місяць тому

    Кирилл потихоньку делает из себя кумира)

  • @nikolaypopov5830
    @nikolaypopov5830 Місяць тому

    Clean codeR - тоже книга Мартина

  • @user-dg5sv8el5w
    @user-dg5sv8el5w 12 днів тому

    Блин, ребят, ну капец слабо, даже грустно как то... Вы позовите меня поговорить за чистый код и SOLID, и я объясню что и как
    И по каким причинам люди это не понимают или не умеют пользоваться, ну правда грустно что не транслируется реальная суть вещей....

  • @furryablack29
    @furryablack29 29 днів тому

    Мда, сейчас пилю фичу в грязном коде.
    Да, весь код грязный, согласен.
    Есть грязный как асфальт после ветра и дождя.
    Есть грязный как выгребная яма.
    Грязь грязи рознь.
    Я преисполнился.

  • @user-lc4vb9dj8v
    @user-lc4vb9dj8v Місяць тому +10

    > Подкаст про чистый код
    Позвали чела который не работал ни в одной серьёзной технической компании.

  • @dmitriy4415
    @dmitriy4415 Місяць тому

    Хороший гость. Зовите ещё.

  • @ancevtd2d247
    @ancevtd2d247 Місяць тому

    Кайф

  • @iGotton
    @iGotton Місяць тому

    +

  • @artishoo
    @artishoo Місяць тому +5

    Мутный гость какой-то

    • @unitydude
      @unitydude 28 днів тому

      Это вначале. Затем его нормально видно :D

    • @artishoo
      @artishoo 28 днів тому

      @@unitydude казалось что его лицо скрывают, как в репортажей про жертв преступников))

    • @unitydude
      @unitydude 27 днів тому

      @@artishoo интересный эффект получился с рассветом :)

  • @DmitryRandom
    @DmitryRandom 12 днів тому

    Вся наша жизнь .... игра, тьфу конечный автомат конечно же

  • @egormerkushev
    @egormerkushev Місяць тому +4

    Максимально спорный выпуск от «просветленных» программистов

  • @ruslanm.1120
    @ruslanm.1120 Місяць тому

    Где код? Развели тут болтанку, понимаешь.

  • @denisf3100
    @denisf3100 Місяць тому

    Вы просто не сталкивались с настоящим говнокодом

  • @LelikPtz
    @LelikPtz Місяць тому +9

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

    • @AlexP-fg3ci
      @AlexP-fg3ci Місяць тому +1

      Я чаще вижу что вместо душнилова на старте/собесе про солид и клин-код лучше работает сложно формулируемый "коммон-сенс", "чувство прекрасного" и обучение в формате подмастерья. Т.е. приходит ждун в команду и его потихоньку за полгода подтягивают в самостоятельного разраба с помощью хардкорного ревью и синков, иногда вставляя базворды типа "паттерн Х", "читаемость", "поддерживаемость", etc для придания своей речи вида объективности
      Хоть может показаться что это про передачу субъективного видения, но почему то переходя с одного места на другое вижу что все серьезные разрабы приходят к похожим подходам. Видимо хорошие идеи распространяются в индустрии крос-опылением)

  • @sdev9881
    @sdev9881 Місяць тому +6

    "Чистый код" - не нужен. Но у гостя так сложно формулируются мысли вначале, что очень сложно понять о чем он хочет сказать. Возможно, "чистый код" хорошо помогает понимать чей-то код. Также как и "чистая и структурированная речь"

  • @TheTmntmike
    @TheTmntmike Місяць тому +1

    Чистый код - чисто инфоциганаская тема. Эта книга скорее мотивационная какая-то, нежели что-то применимое в реальной жизни.

  • @yavbvb123
    @yavbvb123 Місяць тому

    Как можно серьезно воспринимать взрослого человека, когда у него на полке стоят книги про Гарри Поттера?

    • @asd121asd
      @asd121asd Місяць тому

      Исключительно позитивно!

    • @katellaEvgenii
      @katellaEvgenii Місяць тому

      Предлагаю вам развернуть мысль, воспользовавшись шаблоном:
      Книги про Гарри Поттера на полке у взрослого человека, безотносительно того как и откуда они там взялись, это плохо, потому что… (продолжите мысль)

    • @yavbvb123
      @yavbvb123 Місяць тому

      @@katellaEvgenii , до того как задавать этот вопрос, мне нужно было подумать кому я его задаю

  • @KuradoKunio
    @KuradoKunio 10 днів тому

    мусорное видео