Александр Гончаров. Чистый код: антипаттерны в питоне, и как с ними бороться

Sdílet
Vložit
  • čas přidán 12. 09. 2024
  • Александр Гончаров
    Senior python developer, Reef Technologies
    Чистый код: антипаттерны в питоне, и как с ними бороться
    Код читают чаще, чем пишут. Каждая строчка, написанная нами и отправленная в "долгое плавание", будет прочитана - может, нашими коллегами, может, совершенно незнакомыми разработчиками. Поэтому код - это в том числе и время разработчиков, которые будут с этим кодом работать. Давайте сделаем этих людей чуточку счастливее!
    В докладе рассмотрим самые распространённые антипаттерны и ошибки на Питоне, как с ними бороться и, главное, как заставить компьютер помогать нам в этой борьбе.

Komentáře • 10

  • @user-qc8xe9ie8z
    @user-qc8xe9ie8z Před 2 dny

    Спасибо за доклад!
    Полезно было-бы знать кол-во строк в проектах, чтобы сравнивать отношение ошибок к строкам кода. 1000 ошибок для проекта в 100 строк кода не то же самое, что 1000 ошибок на 10000 строк кода
    Для поиска клонов (copy/ paste) можно использовать инструмент jscpd

  • @KirillBon
    @KirillBon Před měsícem +3

    Как то очень странно, человек явно ставит знак равенства между "чистым кодом" и "аннотациями типов". А с чего вдруг?

    • @lokie4545
      @lokie4545 Před měsícem +2

      Скорее здесь больше не про чистый код, а про его читаемость.

  • @redneck_prm5429
    @redneck_prm5429 Před měsícem

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

  • @ExodusUz
    @ExodusUz Před měsícem

    годнота

  • @renatyv
    @renatyv Před měsícem

    из полезного, узнал что в ruff можно все правила включить

  • @KirillBon
    @KirillBon Před měsícem +6

    40:28 Писать
    *a: int = 1*
    не нужно, это высшая степень маразма.
    Кто-кто, а статический анализатор прекрасно понимает, что 1 - это целое.
    Питон для того и придумали, чтобы он был лаконичным.
    Вот джава строго типизированная, но при этом чудовищно многословная. Хотите везде писать int a = 1; -- вам туда.
    Хотя и до джавистов начинает доходить что это маразм, см JEP 286.

  • @user-xr1ke6ep7u
    @user-xr1ke6ep7u Před 13 dny

    I love print ❤‍🩹

  • @_dzen_tv_
    @_dzen_tv_ Před měsícem

    Вот другие языки не могут все задачи решить строгими типами.
    Так например в плюсах есть auto.
    Аналогично в C# есть var.
    Про джаву уже написали в комментах.
    Остаётся только один вопрос кому и зачем выгодно превращать питон в кусок говна, а сообщество питонистов в зомби?
    PS: Про геймдев. Любой школьник в курсе что векторы не только в физическом, но и в графическом движке 4-компонентные. Как и цвета.

    • @redneck_prm5429
      @redneck_prm5429 Před měsícem

      Причину, по котороой питонское сообщество так активно обмазывается статической типизацией, лучше всего объясняет высказывание самого Гвидо:
      Дорогой ценой я выучил урок: для небольших программ динамическая
      типизация - благо. Но для более крупных программ необходим более дисциплинированный подход. И хорошо, когда язык предлагает такую дисциплину, а не говорит «Да делай ты что хочешь».