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

  Рет қаралды 16,865

Podlodka

Podlodka

Күн бұрын

Когда-то давно Роберт Мартин (он же “Дядя Боб”) популяризовал словосочетания “Чистый код” и “Чистая архитектура”. С тех пор не утихают споры, а что же именно он под всем этим подразумевает. Прошло несколько раундов обсуждений, и уже выросло поколение разработчиков, которые говорят, что рекомендациям Дяди Боба ни в коем случае нельзя следовать.
А значит пришла пора нам самим разобраться с тем, что такое Чистый Код! А помогает нам в этом Кирилл Мокевнин из 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 Подводим черту

Пікірлер: 61
@user-zu3im3rc2f
@user-zu3im3rc2f 28 күн бұрын
Когда я вырасту, то хочу быть таким же крутым как Кирилл, только мне уже 35 :(
@yet300
@yet300 27 күн бұрын
Мне 21 и тоже так думаю😅
@garikdjan6266
@garikdjan6266 25 күн бұрын
надо было начинать учить SOLID в 11 лет
@phyllobolus
@phyllobolus 25 күн бұрын
Когда вырастет борода.
@alexjegor
@alexjegor 21 күн бұрын
Никогда не поздно
@oeaoo
@oeaoo 22 күн бұрын
На определенном этапе осознаешь что чистота кода - плохая самоцель. Достаточно чистый код - вот это да. А понимать ту самую "достаточность" - вот где сила.
@ArcadeMdns
@ArcadeMdns 19 күн бұрын
Как фсм проще, чем многие думают, так и принцип лисков проще, чем звучит. Оверрайды не должны ломать работу программы. Используется примерно всегда
@spacerecluse
@spacerecluse 14 күн бұрын
чистый код бывает. я его видел. написан как учат в книжках. код был единообразен при том что часть была отдана на аутсорс. все решения были бест практис. код был прозрачный с хорошей читаемостью. это целиком зависело от разраба который последним делал код ревью. в команде должен быть тот кто гик и за ним последнее слово, тогда и код будет чистым. а остальное все оправдания ...
@andrewskripko2311
@andrewskripko2311 12 күн бұрын
Моё уважение этому господину. Слушая как он объясняет сложные вещи простыми словами - понимаешь что он все понимает
@ivankartashev7998
@ivankartashev7998 25 күн бұрын
Отличный получился выпуск, спасибо🙏
@Andruxxxaify
@Andruxxxaify 27 күн бұрын
отличный подкаст. один из вопросов на одном из собесов - "какой из паттернов реализует одну из букв SOLID - например O". ну и в целом главные требования - знание абсолютное с применением в коде и код ревью SOLID DRY KISS YAGNI и всех паттернов. я в целом понял, что что-то там не то...
@TheRedbeardster
@TheRedbeardster 28 күн бұрын
Кирюха изобретает монады, пайплайны, тройки Хоара и спеки на функции :) Кирюха молодец! :)
@user-dc8us2ci4n
@user-dc8us2ci4n 28 күн бұрын
Мокевнин это всегда топ, спасибэйро!!!
@user-uc1ec4dd8i
@user-uc1ec4dd8i 20 күн бұрын
спасибо большое за выпуск, было интересно!
@FigisBadralov
@FigisBadralov 14 күн бұрын
Я ни на одном проекте не видел документ Стандарты Разработки. В нем приводится глоссарий, как мы бустрапим новые проекты, как мы именуем proto, как бранчуемся, какие среды, как апрувим комиты. И все в том же духе. Документ без воды, страниц на 20-30. Много коммуникационных проблем будет решено!!!
@kselnaag2482
@kselnaag2482 28 күн бұрын
Чистый и никому не нужный - идеальное текущее описание меня =D
@Dmitrijserg
@Dmitrijserg 20 күн бұрын
Шикарный видос, спасибо большое, Кирилл - мощь, конечно
@v1aadev
@v1aadev 28 күн бұрын
Так. Прекрасные Катя и Женя, легендарный Кирилл, горячая тема, но лайк отгружен до просмотра, даже если в нём будет нещадно подбито моё личное объективно верное ощущение чистого кода!
@johnsandwich6726
@johnsandwich6726 27 күн бұрын
ощущение поле выпуска, что все писали и пишут неправильно, но только Кирилл знает как надо ))) Паттерны можно не учить, аббревиатуры неправильные, вообще все лучшие практики прошлых лет не то - Кирилл наш кандидат, приходите к нему, он научит 🙂🙂🙂 P.S. на телегу Кирилла подписался 🙂
@spacerecluse
@spacerecluse 14 күн бұрын
а я отписался 😀
@johnsandwich6726
@johnsandwich6726 13 күн бұрын
@@spacerecluseвозможно и так поступлю ) пока наблюдаю
@Ru.Ubububu
@Ru.Ubububu 27 күн бұрын
Код Мартина можно посмотреть на гитхабе, он об этом пишет в своих же книгах. Например, Fitnesse, написанный на Java
@garikdjan6266
@garikdjan6266 27 күн бұрын
юзал FSM в бизнес логике до того, как это стало мейнстримом :) я выходец из embedded programming и любую систему/процесс воспринимаю как бесконечный цикл с переключением состояний ) в совеременных реалиях это можно назвать domain events
@ChannelCheesecake
@ChannelCheesecake 27 күн бұрын
В ФП Continuations и Continuation-Passing Style - обобщение автоматного программирования - существует где-то с середины прошлого века
@TheLevius
@TheLevius 28 күн бұрын
Хороший выпуск, классный гость
@АнтонТрофимов
@АнтонТрофимов 21 күн бұрын
Кирилл как всегда крут!) Послушал с кайфом!
@hurricane-rus
@hurricane-rus 23 күн бұрын
Использование статусов для управления состоянием объектов - отличный подход. Но это у меня точно не связывается с конечным автоматом, который для меня какая-то абстрактная научная штука)
@user-zr4bz4mn5g
@user-zr4bz4mn5g 28 күн бұрын
Ссылка на тг канал Кирилла будет?
@watcher750
@watcher750 28 күн бұрын
Организованное программирование
@PodlodkaShow
@PodlodkaShow 28 күн бұрын
Добавили в описание к видео!
@user-ox9uf5tt5j
@user-ox9uf5tt5j 22 күн бұрын
Не увидел в ссылках про доклад, о котором Кирилл говорил в конце. Так вот, доклад: «Снесите это немедленно» - Аксенов
@user-ht4jk2wf4u
@user-ht4jk2wf4u 8 күн бұрын
ифы vs конечные автотматы - "было бы все немножко по-другому". И какие преимущества были бы у автоматов?
@grulex411
@grulex411 5 күн бұрын
Забыл Эванса посоветовать, хотя в процессе ссылался) (Не является инвестиционной рекомендацией)
@nikitarusin2489
@nikitarusin2489 20 күн бұрын
Чтобы разблокировать персонажа Кирилл Макевнин нужно дослушать до 25й минуты
@Egorka
@Egorka 23 күн бұрын
Кирилл потихоньку делает из себя кумира)
@user-lc4vb9dj8v
@user-lc4vb9dj8v 25 күн бұрын
> Подкаст про чистый код Позвали чела который не работал ни в одной серьёзной технической компании.
@furryablack29
@furryablack29 19 күн бұрын
Мда, сейчас пилю фичу в грязном коде. Да, весь код грязный, согласен. Есть грязный как асфальт после ветра и дождя. Есть грязный как выгребная яма. Грязь грязи рознь. Я преисполнился.
@nikolaypopov5830
@nikolaypopov5830 28 күн бұрын
Clean codeR - тоже книга Мартина
@user-dg5sv8el5w
@user-dg5sv8el5w 3 күн бұрын
Блин, ребят, ну капец слабо, даже грустно как то... Вы позовите меня поговорить за чистый код и SOLID, и я объясню что и как И по каким причинам люди это не понимают или не умеют пользоваться, ну правда грустно что не транслируется реальная суть вещей....
@ancevtd2d247
@ancevtd2d247 28 күн бұрын
Кайф
@dmitriy4415
@dmitriy4415 27 күн бұрын
Хороший гость. Зовите ещё.
@artishoo
@artishoo 25 күн бұрын
Мутный гость какой-то
@unitydude
@unitydude 19 күн бұрын
Это вначале. Затем его нормально видно :D
@artishoo
@artishoo 18 күн бұрын
@@unitydude казалось что его лицо скрывают, как в репортажей про жертв преступников))
@unitydude
@unitydude 18 күн бұрын
@@artishoo интересный эффект получился с рассветом :)
@egormerkushev
@egormerkushev 27 күн бұрын
Максимально спорный выпуск от «просветленных» программистов
@iGotton
@iGotton 28 күн бұрын
+
@LelikPtz
@LelikPtz 28 күн бұрын
Очень странное впечатление. Правила из чистого кода вредные, солид устарел, паттерны не нужны, юнит тесты переоценены. Яркие заявления, а потом примеры которые доказывают что все таки и правила «чистого кода» соблюдать надо, и примеры реализаций паттернов и где они применяются, и как большой класс удобно разбивать по солиду, и важная бизнес логика в юнит тестах. Вот так закопали. А новички наслушаются лозунгов и разгребаем потом год обджекты в 3к строк с переменными в одну букву без тестов.
@AlexP-fg3ci
@AlexP-fg3ci 27 күн бұрын
Я чаще вижу что вместо душнилова на старте/собесе про солид и клин-код лучше работает сложно формулируемый "коммон-сенс", "чувство прекрасного" и обучение в формате подмастерья. Т.е. приходит ждун в команду и его потихоньку за полгода подтягивают в самостоятельного разраба с помощью хардкорного ревью и синков, иногда вставляя базворды типа "паттерн Х", "читаемость", "поддерживаемость", etc для придания своей речи вида объективности Хоть может показаться что это про передачу субъективного видения, но почему то переходя с одного места на другое вижу что все серьезные разрабы приходят к похожим подходам. Видимо хорошие идеи распространяются в индустрии крос-опылением)
@ruslanm.1120
@ruslanm.1120 27 күн бұрын
Где код? Развели тут болтанку, понимаешь.
@DmitryRandom
@DmitryRandom 3 күн бұрын
Вся наша жизнь .... игра, тьфу конечный автомат конечно же
@denisf3100
@denisf3100 27 күн бұрын
Вы просто не сталкивались с настоящим говнокодом
@sdev9881
@sdev9881 28 күн бұрын
"Чистый код" - не нужен. Но у гостя так сложно формулируются мысли вначале, что очень сложно понять о чем он хочет сказать. Возможно, "чистый код" хорошо помогает понимать чей-то код. Также как и "чистая и структурированная речь"
@KuradoKunio
@KuradoKunio Күн бұрын
мусорное видео
@TheTmntmike
@TheTmntmike 27 күн бұрын
Чистый код - чисто инфоциганаская тема. Эта книга скорее мотивационная какая-то, нежели что-то применимое в реальной жизни.
@yavbvb123
@yavbvb123 21 күн бұрын
Как можно серьезно воспринимать взрослого человека, когда у него на полке стоят книги про Гарри Поттера?
@asd121asd
@asd121asd 21 күн бұрын
Исключительно позитивно!
@katellaEvgenii
@katellaEvgenii 21 күн бұрын
Предлагаю вам развернуть мысль, воспользовавшись шаблоном: Книги про Гарри Поттера на полке у взрослого человека, безотносительно того как и откуда они там взялись, это плохо, потому что… (продолжите мысль)
@yavbvb123
@yavbvb123 21 күн бұрын
@@katellaEvgenii , до того как задавать этот вопрос, мне нужно было подумать кому я его задаю
Как бесплатно замутить iphone 15 pro max
00:59
ЖЕЛЕЗНЫЙ КОРОЛЬ
Рет қаралды 8 МЛН
아이스크림으로 체감되는 요즘 물가
00:16
진영민yeongmin
Рет қаралды 63 МЛН
Secret Experiment Toothpaste Pt.4 😱 #shorts
00:35
Mr DegrEE
Рет қаралды 27 МЛН
Когда AI заменит программистов? / Влад Тен / #1
1:30:25
Организованное программирование | Кирилл Мокевнин
Рет қаралды 30 М.
Обязательные знания для тимлида
2:31:44
Xiaomi SU-7 Max 2024 - Самый быстрый мобильник
32:11
Клубный сервис
Рет қаралды 522 М.
Копия iPhone с WildBerries
1:00
Wylsacom
Рет қаралды 8 МЛН
Это Xiaomi Su7 Max 🤯 #xiaomi #su7max
1:01
Tynalieff Shorts
Рет қаралды 2 МЛН
Как распознать поддельный iPhone
0:44
PEREKUPILO
Рет қаралды 2,3 МЛН