Носова Code smells.md 6.5 KB



Идентификация "Code smells" (признаков плохого кода) и их устранение.

Что такое code smells.

Code smells- это категории проблем в коде, которые могут привести к серьезным проблемам. Они похожи на предупреждающие индикаторы, которые возникают из за неправильных методов программирования.

Виды и признаки code smells и способы их устранения.

enter image description here

  1. Длинные функции. Признак: функция содержит большое количество строк кода и выполняет несколько операций.
    Решение: разбейте длинную функцию на несколько меньших функций, каждый из которых выполняет только одно действие. Это упрощает проверку, повышает понятность и делает код более организованным.
  2. Дублированный код. Признак: наличие одинакового или схожего кода в различных частях проекта.
    Решение: вынесите повторяющийся код в отдельную функцию, модуль или класс. Это сократит объем кода и облегчит его поддержку.
  3. Магические числа. Признак: в коде используются неочевидные числовые значения, которые трудно интерпретировать.
    Решение: замените числа константами с говорящими именами, чтобы было понятно, что они означают.
  4. Большие классы. Признак: класс, содержащий большое количество полей и методов, выполняющих множество различных задач.
    Решение: примените принцип единственной ответственности (SRP) и разделите класс на несколько более маленьких классов, каждый из которых отвечает за свою конкретную задачу.
  5. Лишние комментарии. Признак: комментарии необходимы для пояснения кода, а не для добавления контекста.
    Решение: вместо написания комментариев, улучшите код так, чтобы он был понятен без дополнительных объяснений. Используйте понятные имена переменных и функций, которые отражают логику кода.
  6. Неиспользуемый код. Признаком является код, который не используется и не выполняется.
    Для решения этой проблемы необходимо избавиться от всех неиспользуемых переменных, функций или классов, чтобы код оставался чистым и понятным.
  7. Сложные условные выражения. Признаком являются сложные условные выражения, которые трудно читать и понимать. Для улучшения читаемости и облегчения отладки следует разделить сложное условие на несколько логических блоков, используя понятные имена для промежуточных переменных или функций.
  8. Длинные списки параметров. Признак: функции с избыточным количеством аргументов, которые затрудняют понимание и использование.
    Решение: используйте объекты для объединения связанных параметров, или рассмотрите возможность передачи объекта, содержащего все необходимые данные
    Это всего лишь несколько примеров code smells, с которыми часто сталкиваются программисты. Важно знать об этих "неприятностях" и устранять их, чтобы улучшить общее качество кодовой базы. Путем выявления и рефакторинга, разработчики могут улучшить удобство сопровождения, читаемость и производительность своего программного обеспечения.

Заключение.

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

Литература.

https://dzen.ru/a/ZyS_1sbOXx7vL-jV

Вопросы.

  1. Что такое "Code Smells"?
  2. Назовите основные виды "Code Smells". Какие из них вы считаете наиболее распространенными?
  3. Каковы преимущества устранения "Code Smells"?
  4. Приведите пример ситуации, когда "Code Smell" привел к серьёзной проблеме в вашем проекте. Как вы решили эту проблему?
  5. Как регулярное выявление и устранение "Code Smells" влияет на продуктивность команды разработки?