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

Метод не должен содержать много возвратов (TooManyReturns)

Тип Поддерживаются
языки
Важность Включена
по умолчанию
Время на
исправление (мин)
Теги
Дефект кода BSL
OS
Незначительный Нет 20 brainoverload

Параметры

Имя Тип Описание Значение
по умолчанию
maxReturnsCount Целое Максимально допустимое количество возвратов внутри метода 3

Описание диагностики

Большое количество возвратов в методе (процедуре или функции) увеличивает его сложность и снижает производительность и восприятие.

Примеры

Пример плохого метода

Функция Пример(Условие)
    Если Условие = 1 Тогда
        Возврат "Проверка пройдена";
    ИначеЕсли Условие = 2 Тогда
        ВыполнитьДействие();
        Возврат "Проверка не пройдена";
    ИначеЕсли Условие > 7 Тогда
        Если ВыполнитьПроверку(Условие) Тогда
            Возврат "Проверка пройдена";
        Иначе
            Возврат "Проверка не пройдена";
        КонецЕсли;
    КонецЕсли;
    Возврат "";
КонецФункции

Источники

Сниппеты

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

// BSLLS:TooManyReturns-off
// BSLLS:TooManyReturns-on

Параметр конфигурационного файла

"TooManyReturns": {
    "maxReturnsCount": 3
}