Code Smell 236 — что делать с слишком длинными строками кода

Code Smell 236 — что делать с слишком длинными строками кода

4 января 2024 г.

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

<блок-цитата>

TL;DR: извлеките и оберните код

Проблемы

  • Трудно читаемый код (особенно на небольших устройствах).
  • Нарушение закона Деметры

Решения

  1. Оберните код длиной не более 75 символов.
  2. 2. Разрыв и объединение длинных строк. Компиляторы оптимизируют их. Думать о снижении скорости — это ошибка преждевременной оптимизации.

    3. Не используйте сокращения.

    Контекст

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

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

    Пример кода

    Неверно

    struct ExtraterrestrialSignal { signal_frequency: f64, signal_strength: f64, signal_duration: f64, }
    
    fn perform_signal_processing_and_analysis(extraterrestrial_signal: &ExtraterrestrialSignal,
    ) {
        println!(
            "Extraterrestrial Signal processed - Frequency: {} Hz, Strength: {}, Duration: {} seconds", extraterrestrial_signal.signal_frequency,  extraterrestrial_signal.signal_strength, extraterrestrial_signal.signal_duration);
    
        if extraterrestrial_signal.signal_strength > 0.8 && extraterrestrial_signal.signal_duration > 10.0
        {
            println!("Potential Extraterrestrial Signal of interest!");
        } else {
            println!("Signal does not meet criteria for further investigation.");
        }
    }
    

    Верно

    struct ExtraterrestrialSignal {
        signal_frequency: f64,
        signal_strength: f64,
        signal_duration: f64,
    }
    
    fn perform_signal_processing_and_analysis(
        extraterrestrial_signal: &ExtraterrestrialSignal,
    ) {
        println!(
            "Extraterrestrial Signal processed" + 
              "- Frequency: {} Hz, Strength: {}, Duration: {} seconds",
            extraterrestrial_signal.signal_frequency,
            extraterrestrial_signal.signal_strength,
            extraterrestrial_signal.signal_duration
        );
    
        if extraterrestrial_signal.signal_strength > 0.8
            && extraterrestrial_signal.signal_duration > 10.0
        {
            println!("Potential Extraterrestrial" 
                + " Signal of interest!");
        } else {
            println!("Signal does not meet criteria" 
                + " for further investigation.");
        }
    }
    

    Обнаружение

    [X] Автоматически

    Это запах форматирования и синтаксиса

    Теги

    • Форматирование

    Уровень

    [X] Новичок

    ИИ-помощники

    ИИ-помощники иногда приносят краткий код, а не реальный рабочий код.

    Вы можете использовать помощников для переноса и форматирования кода.

    Заключение

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

    Отношения

    https://blog.devgenius.io/code-smell-33-abbreviations-ba5149c93a68

    https://blog.devgenius.io/code-smell-48-code-without- стандарты-60c9e0905627

    https://levelup.gitconnected.com/code-smell-164-mixed-indentations-a328947b9a7e

    https://levelup.gitconnected.com/code-smell-211-tab-over-spaces-66f20522727c

    Дополнительная информация

    Книга рецептов чистого кода

    Отказ от ответственности

    Запахи кода — это мои мнение.

    Кредиты

    Фото Олеси Емец на сайте Удалить


    <блок-цитата>

    Цель уборки — не просто навести порядок, а почувствовать счастье, живя в этой среде.

    Мари Кондо

    https://blog.devgenius.io/software-engineering-great-quotes -3af63cea6782?embedable=true


    Эта статья входит в серию CodeSmell.

    https://blog.devgenius .io/how-to-find-the-stinky-parts-of-your-code-fa8df47fc39c?embedable=true


    Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE