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

Ограничение на количество не обязательных параметров метода (NumberOfOptionalParams)

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

Параметры

Имя Тип Описание Значение
по умолчанию
maxOptionalParamsCount Целое Допустимое количество необязательных параметров метода 3

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

Не рекомендуется объявлять в функциях много параметров (нужно ориентироваться на количество не более семи параметров), при этом не должно быть много параметров со значениями по умолчанию (нужно ориентироваться на количество не более трех таких параметров). В противном случае, читаемость вызывающего кода сильно снижается. Например, можно легко ошибиться в количестве запятых при передаче необязательных параметров.
При необходимости передавать в функцию большое число параметров рекомендуется группировать однотипные параметры в один или несколько составных параметров типа Структура.

Примеры

Неправильно:

// Создает элемент справочника "Номенклатура"
Процедура СоздатьЭлементНоменклатуры(Наименование, ТоварУслуга, ЕдиницаИзмерения, ВесНетто, ПроверятьУникальность = Истина)

КонецПроцедуры

Правильно:
Cгруппировать параметры, описывающие значения реквизитов номенклатуры, в структуру ЗначенияРеквизитов.

// Создает элемент справочника "Номенклатура"
Процедура СоздатьЭлементНоменклатуры(ЗначенияРеквизитов, ПроверятьУникальность = Истина)
КонецПроцедуры

Источники

Сниппеты

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

// BSLLS:NumberOfOptionalParams-off
// BSLLS:NumberOfOptionalParams-on

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

"NumberOfOptionalParams": {
    "maxOptionalParamsCount": 3
}