Перейти к содержанию

Чрезмерный уровень вложенности конструкций "Если\

# Чрезмерный уровень вложенности конструкций "Если\

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

Неправильно

  Если condition1 Тогда           // Уровень = 1
    // ...
    Если condition2 Тогда         // Уровень = 2
      // ...
      Для i = 0 По 10 Цикл        // Уровень = 3, не привышен лимит
        // ...
        Если ЧтоТо4 Тогда         // Уровень = 4, привышен лимит вложенности.
           Если ЧтоТо5 Тогда      // Уровень = 5, превышен лимит, но правило сработает только на уровне 4
            // ...

Экранирование кода

// sonar:NestedControlFlowDepth:off
// sonar:NestedControlFlowDepth:on