Новые правила "Одинаковые условия в последовательности вида Если (....) ИначеЕсли (....) ИначеЕсли (....)" и "Одинаковый код во взаимоисключаемых ветках ветвления кода"

Такие места в коде лучше все-таки видеть и знать про них. Потом уже можно принять решение и сказать, что в этом месте “так надо”. Сонар - он про поиск таких мест и доставку их до мозга архитектора.

1 Симпатия

Я обычно не так говорю. Есть основной сценарий использования:

  • есть объектная модель исходного кода - авторы плагина разрабатывают логику анализа проблемных мест: это полностью их право, они читают стандарты и облекают стандарты в правила.
  • есть правило - архитектор может его отключить, может включить: это полностью его право.
  • есть замечание - там где правило сработало, ведущий разработчик может его учесть как неактуальное, а может исправить: это полностью его право.
  • есть технический долг на проекте - менеджер его видит, может согласовывать релиз, а может и нет: это полностью его право.

Холивар здесь исключен - каждый нажимает те кнопки которые считает верными. Сонар он про это - про исключение священных войн как писать правильно, с должным уровнем прозрачности.

А еще веселые условия

довольно свежая УНФ :frowning:

Этот модуль вообще очень копипастный :frowning:

В нем супер-условия на десятки строк, что видно на скриншоте.

Например, 3 условия повторяются, между крайними из них более 100 строк

из множественных elseif, что встречались, большинство можно было в итоге заменить на Соответствие.Получить() с подготовленным соответствием в отдельной функции

3 Симпатий

Ага, хороший вариант решения.

Прогнал несколько типовых новыми правилами, с дублями кода (одинаковые условия и одинаковый код внутри взаимоисключающих условий) много срабатываний :frowning:

Любят 1С-ники (и не только сотрудники вендора) копипаст :frowning: