Двойные отрицания (DoubleNegatives)¶
Тип | Поддерживаются языки |
Важность | Включена по умолчанию |
Время на исправление (мин) |
Теги |
---|---|---|---|---|---|
Дефект кода |
BSL OS |
Важный |
Да |
3 |
brainoverload badpractice |
Описание диагностики¶
Использование двойных отрицаний усложняет понимание кода и может приводить к ошибкам, когда вместо истины разработчик "в уме" вычислил Ложь, или наоборот. Двойные отрицания рекомендуется заменять на выражения условий, которые прямо выражают намерения автора.
Примеры¶
Неправильно¶
Если Не ТаблицаЗначений.Найти(ИскомоеЗначение, "Колонка") <> Неопределено Тогда
// Сделать действие
КонецЕсли;
Правильно¶
Если ТаблицаЗначений.Найти(ИскомоеЗначение, "Колонка") = Неопределено Тогда
// Сделать действие
КонецЕсли;
Источники¶
- Источник: Remove double negative
Сниппеты¶
Экранирование кода¶
// BSLLS:DoubleNegatives-off
// BSLLS:DoubleNegatives-on
Параметр конфигурационного файла¶
"DoubleNegatives": false