bsl-language-server
bsl-language-server copied to clipboard
[NEW] Проверка на число строк вставки внутри расширенной процедуры с директивой "ИзменениеИКонтроль"
Описание проблемы, ошибки, которую надо диагностировать
Когда в расширение процедур с дерективой "ИзменениеиКонтроль" делают вставки кода с большим числом строк, особенно, если такие вставки частые, то код перестает быть читабельным. Становится не понятным, что хотели сделать в расширении. Какие цели преследовали. Возникает запутанность параметров. В случае выделения процедур получаем следующие преимущества:
- Если строки кода помещать внутрь процедур, которые будут иметь поясняющее название и комментарии, то суть расширения процедур станет более ясной.
- Также, такой подход позволит уменьшить число дублированых строк, когда расширение касается, например, однотипных печатных форм.
- Также мы избавляемся от запутанности переменных. Такой подход нас заставляет использовать одну переменную-структуру, которую мы будем переность из "вставки" в "вставку". Внутри же процедур, логика переменных станет более очевидной.
В тех же случаях, когда код нельзя выделить в отдельный метод, например, добавлена часть цикла или условия, то проверку можно экранировать.
Ссылка на источник, подтверждающее нарушение либо обоснование наличия проблемы
Нет.
Параметры диагностики
Допустимое число строк - число строк, которое допустимо использовать в вставке, без помещения в метод.
Тип Статья на русском
- [ ] :ant: Ошибка
- [ ] :cop: Уязвимость
- [ ] :guardsman: Потенциальная уязвимость
- [x] :poop: Качество кода
- [ ] :trollface: Другое
Важность Статья на русском
- [ ] :broken_heart: Блокирующая / Blocker
- [ ] :heart: Критическая / Critical
- [x] :yellow_heart: Важная / Major
- [ ] :blue_heart: Незначительная / Minor
- [ ] :green_heart: Информационная / Info
- [ ] :revolving_hearts: Другое
Тэги Статья на русском
- [ ]
STANDARD
- "Нарушение стандартов 1С" - [ ]
LOCKINOS
- "Не будет работать в другой ОС" - [ ]
SQL
- "Проблема с запросом" - [ ]
PERFORMANCE
- "Проблема производительности" - [x]
BRAINOVERLOAD
- "Непонятный код" - [x]
BADPRACTICE
- "Плохая практика программирования" - [ ]
CLUMSY
- "Излишние действия" - [ ]
DESIGN
- "Ошибка в проектировании" - [ ]
SUSPICIOUS
- "Подозрительный код" - [ ]
UNPREDICTABLE
- "Непредсказуемо работающий код" - [ ]
DEPRECATED
- "Устаревшая функциональность" - [ ]
ERROR
- "Ошибочная конструкция" - [ ]
LOCALIZE
- "Проблемы локализации"
Время на исправление (минут)
15 минут
Дополнительная информация
Приведу пример, где видно, на сколько сильно снижается сложность.
- Код сплошняком
- Код выделен в процедуры