Используются для проверки кода на соответствие стандартам кодирования и для поиска возможных ошибок.
Некоторые диагностики выключены по умолчанию. Для их включения используйте конфигурационный файл.
Для экранирования отдельных участков кода или файлов от срабатывания диагностик можно воспользоваться специальными комментариями вида // BSLLS:КлючДиагностики-выкл. Более подробно данная функциональность описана в Экранирование участков кода.
Общее количество: 114
- Дефект кода: 71
- Уязвимость: 3
- Ошибка: 36
- Потенциальная уязвимость: 4
| Ключ | Название | Включена по умолчанию | Важность | Тип | Тэги |
|---|---|---|---|---|---|
| AttachIdleHandler | Использование метода ПодключитьОбработчикОжидания | Да | Информационный | Ошибка | errorunpredictable |
| BeginTransactionBeforeTryCatch | Нарушение правил работы с транзакциями для метода 'НачатьТранзакцию' | Да | Важный | Ошибка | standard |
| CachedPublic | Кеширование программного интерфейса | Да | Важный | Дефект кода | standarddesign |
| CanonicalSpellingKeywords | Каноническое написание ключевых слов | Да | Информационный | Дефект кода | standard |
| CodeBlockBeforeSub | Определения методов должны размещаться перед операторами тела модуля | Да | Блокирующий | Ошибка | error |
| CodeOutOfRegion | Код расположен вне области | Да | Информационный | Дефект кода | standard |
| CognitiveComplexity | Когнитивная сложность | Да | Критичный | Дефект кода | brainoverload |
| CommentedCode | Закомментированный фрагмент кода | Да | Незначительный | Дефект кода | standardbadpractice |
| CommitTransactionOutsideTryCatch | Нарушение правил работы с транзакциями для метода 'ЗафиксироватьТранзакцию' | Да | Важный | Ошибка | standard |
| CommonModuleAssign | Присвоение общему модулю | Да | Блокирующий | Ошибка | error |
| CommonModuleInvalidType | Общий модуль недопустимого типа | Да | Важный | Ошибка | standardunpredictabledesign |
| CommonModuleNameCached | Пропущен постфикс "ПовтИсп" | Да | Важный | Дефект кода | standardbadpracticeunpredictable |
| CommonModuleNameClient | Пропущен постфикс "Клиент" | Да | Незначительный | Дефект кода | standardbadpracticeunpredictable |
| CommonModuleNameClientServer | Пропущен постфикс "КлиентСервер" | Да | Важный | Дефект кода | standardbadpracticeunpredictable |
| CommonModuleNameFullAccess | Пропущен постфикс "ПолныеПрава" | Да | Важный | Потенциальная уязвимость | standardbadpracticeunpredictable |
| CommonModuleNameGlobal | Пропущен постфикс "Глобальный" | Да | Важный | Дефект кода | standardbadpracticebrainoverload |
| CommonModuleNameGlobalClient | Глобальный модуль с постфиксом "Клиент" | Да | Важный | Дефект кода | standard |
| CommonModuleNameServerCall | Пропущен постфикс "ВызовСервера" | Да | Незначительный | Дефект кода | standardbadpracticeunpredictable |
| CommonModuleNameWords | Нерекомендуемое имя общего модуля | Да | Информационный | Дефект кода | standard |
| CompilationDirectiveLost | Директивы компиляции методов | Да | Важный | Дефект кода | standardunpredictable |
| CompilationDirectiveNeedLess | Лишняя директива компиляции | Да | Важный | Дефект кода | clumsystandardunpredictable |
| ConsecutiveEmptyLines | Подряд идущие пустые строки | Да | Информационный | Дефект кода | badpractice |
| CreateQueryInCycle | Выполнение запроса в цикле | Да | Критичный | Ошибка | performance |
| CyclomaticComplexity | Цикломатическая сложность | Да | Критичный | Дефект кода | brainoverload |
| DataExchangeLoading | Отсутствует проверка признака ОбменДанными.Загрузка в обработчике событий объекта | Да | Критичный | Ошибка | standardbadpracticeunpredictable |
| DeletingCollectionItem | Удаление элемента при обходе коллекции посредством оператора "Для каждого ... Из ... Цикл" | Да | Важный | Ошибка | standarderror |
| DeprecatedAttributes8312 | Устаревшие объекты платформы 8.3.12 | Да | Информационный | Дефект кода | deprecated |
| DeprecatedCurrentDate | Использование устаревшего метода "ТекущаяДата" | Да | Важный | Ошибка | standarddeprecatedunpredictable |
| DeprecatedFind | Использование устаревшего метода "Найти" | Да | Незначительный | Дефект кода | deprecated |
| DeprecatedMessage | Ограничение на использование устаревшего метода "Сообщить" | Да | Незначительный | Дефект кода | standarddeprecated |
| DeprecatedMethodCall | Устаревшие методы не должны использоваться | Да | Незначительный | Дефект кода | deprecateddesign |
| DeprecatedMethods8310 | Использование устаревшего метода клиентского приложения | Да | Информационный | Дефект кода | deprecated |
| DeprecatedMethods8317 | Использование устаревших глобальных методов платформы 8.3.17 | Да | Информационный | Дефект кода | deprecated |
| DeprecatedTypeManagedForm | Устаревшее использование типа "УправляемаяФорма" | Да | Информационный | Дефект кода | standarddeprecated |
| DuplicateRegion | Повторяющиеся разделы модуля | Да | Информационный | Дефект кода | standard |
| EmptyCodeBlock | Пустой блок кода | Да | Важный | Дефект кода | badpracticesuspicious |
| EmptyRegion | Область не должна быть пустой | Да | Информационный | Дефект кода | standard |
| EmptyStatement | Пустой оператор | Да | Информационный | Дефект кода | badpractice |
| ExcessiveAutoTestCheck | Избыточная проверка параметра АвтоТест | Да | Незначительный | Дефект кода | standarddeprecated |
| ExecuteExternalCode | Выполнение произвольного кода на сервере | Да | Критичный | Уязвимость | errorstandard |
| ExecuteExternalCodeInCommonModule | Выполнение произвольного кода в общем модуле на сервере | Да | Критичный | Потенциальная уязвимость | badpracticestandard |
| ExportVariables | Запрет экспортных глобальных переменных модуля | Да | Важный | Дефект кода | standarddesignunpredictable |
| ExtraCommas | Запятые без указания параметра в конце вызова метода | Да | Важный | Дефект кода | standardbadpractice |
| FormDataToValue | Использование метода ДанныеФормыВЗначение | Да | Информационный | Дефект кода | badpractice |
| FunctionNameStartsWithGet | Имя функции не должно начинаться с "Получить" | Нет | Информационный | Дефект кода | standard |
| FunctionReturnsSamePrimitive | Функция всегда возвращает одно и то же примитивное значение | Да | Важный | Ошибка | designbadpractice |
| FunctionShouldHaveReturn | Функция должна содержать возврат | Да | Важный | Ошибка | suspiciousunpredictable |
| GetFormMethod | Использование метода ПолучитьФорму | Да | Важный | Ошибка | error |
| IdenticalExpressions | Одинаковые выражения слева и справа от "foo" оператора | Да | Важный | Ошибка | suspicious |
| IfConditionComplexity | Использование сложных выражений в условии оператора "Если" | Да | Незначительный | Дефект кода | brainoverload |
| IfElseDuplicatedCodeBlock | Повторяющиеся блоки кода в синтаксической конструкции Если...Тогда...ИначеЕсли... | Да | Незначительный | Дефект кода | suspicious |
| IfElseDuplicatedCondition | Повторяющиеся условия в синтаксической конструкции Если...Тогда...ИначеЕсли... | Да | Важный | Дефект кода | suspicious |
| IfElseIfEndsWithElse | Использование синтаксической конструкции Если...Тогда...ИначеЕсли... | Да | Важный | Дефект кода | badpractice |
| InvalidCharacterInFile | Недопустимый символ | Да | Важный | Ошибка | errorstandardunpredictable |
| IsInRoleMethodDiagnostic | Использование метода РольДоступна | Да | Важный | Дефект кода | error |
| LineLength | Ограничение на длину строки | Да | Незначительный | Дефект кода | standardbadpractice |
| MagicNumber | Магические числа | Да | Незначительный | Дефект кода | badpractice |
| MetadataObjectNameLength | Имена объектов метаданных не должны превышать допустимой длины наименования | Да | Важный | Ошибка | standard |
| MethodSize | Ограничение на размер метода | Да | Важный | Дефект кода | badpractice |
| MissingCodeTryCatchEx | Конструкция "Попытка...Исключение...КонецПопытки" не содержит кода в исключении | Да | Важный | Ошибка | standardbadpractice |
| MissingSpace | Пропущены пробелы слева или справа от операторов + - * / = % < > <> <= >=, а так же справа от , и ; |
Да | Информационный | Дефект кода | badpractice |
| MissingTemporaryFileDeletion | Отсутствует удаление временного файла после использования | Да | Важный | Ошибка | badpracticestandard |
| MissingVariablesDescription | Все объявления переменных должны иметь описание | Да | Незначительный | Дефект кода | standard |
| MultilingualStringHasAllDeclaredLanguages | Есть локализованный текст для всех заявленных в конфигурации языков | Да | Незначительный | Ошибка | errorlocalize |
| MultilingualStringUsingWithTemplate | Частично локализованный текст используется в функции СтрШаблон | Да | Важный | Ошибка | errorlocalize |
| NestedConstructorsInStructureDeclaration | Использование конструкторов с параметрами при объявлении структуры | Да | Незначительный | Дефект кода | badpracticebrainoverload |
| NestedFunctionInParameters | Инициализация параметров методов и конструкторов вызовом вложенных методов | Да | Незначительный | Дефект кода | standardbrainoverloadbadpractice |
| NestedStatements | Управляющие конструкции не должны быть вложены слишком глубоко | Да | Критичный | Дефект кода | badpracticebrainoverload |
| NestedTernaryOperator | Вложенный тернарный оператор | Да | Важный | Дефект кода | brainoverload |
| NonExportMethodsInApiRegion | Неэкспортные методы в областях ПрограммныйИнтерфейс и СлужебныйПрограммныйИнтерфейс | Да | Важный | Дефект кода | standard |
| NonStandardRegion | Нестандартные разделы модуля | Да | Информационный | Дефект кода | standard |
| NumberOfOptionalParams | Ограничение на количество не обязательных параметров метода | Да | Незначительный | Дефект кода | standardbrainoverload |
| NumberOfParams | Ограничение на количество параметров метода | Да | Незначительный | Дефект кода | standardbrainoverload |
| NumberOfValuesInStructureConstructor | Ограничение на количество значений свойств, передаваемых в конструктор структуры | Да | Незначительный | Дефект кода | standardbrainoverload |
| OSUsersMethod | Использование метода ПользователиОС | Да | Критичный | Потенциальная уязвимость | suspicious |
| OneStatementPerLine | Одно выражение в одной строке | Да | Незначительный | Дефект кода | standarddesign |
| OrderOfParams | Порядок параметров метода | Да | Важный | Дефект кода | standarddesign |
| PairingBrokenTransaction | Нарушение парности использования методов "НачатьТранзакцию()" и "ЗафиксироватьТранзакцию()" / "ОтменитьТранзакцию()" | Да | Важный | Ошибка | standard |
| ParseError | Ошибка разбора исходного кода | Да | Критичный | Ошибка | error |
| ProcedureReturnsValue | Процедура не должна возвращать значение | Да | Блокирующий | Ошибка | error |
| PublicMethodsDescription | Все методы программного интерфейса должны иметь описание | Да | Информационный | Дефект кода | standardbrainoverloadbadpractice |
| SelfAssign | Присвоение переменной самой себе | Да | Важный | Ошибка | suspicious |
| SelfInsertion | Вставка коллекции в саму себя | Да | Важный | Ошибка | standardunpredictableperformance |
| SemicolonPresence | Выражение должно заканчиваться символом ";" | Да | Незначительный | Дефект кода | standardbadpractice |
| SeveralCompilerDirectives | Ошибочное указание нескольких директив компиляции | Да | Критичный | Ошибка | unpredictableerror |
| SpaceAtStartComment | Пробел в начале комментария | Да | Информационный | Дефект кода | standard |
| TempFilesDir | Вызов функции КаталогВременныхФайлов() | Да | Важный | Дефект кода | standardbadpractice |
| TernaryOperatorUsage | Использование тернарного оператора | Нет | Незначительный | Дефект кода | brainoverload |
| ThisObjectAssign | Присвоение значения свойству ЭтотОбъект | Да | Блокирующий | Ошибка | error |
| TimeoutsInExternalResources | Таймауты при работе с внешними ресурсами | Да | Критичный | Ошибка | unpredictablestandard |
| TooManyReturns | Метод не должен содержать много возвратов | Нет | Незначительный | Дефект кода | brainoverload |
| TryNumber | Приведение к числу в попытке | Да | Важный | Дефект кода | standard |
| Typo | Опечатка | Да | Информационный | Дефект кода | badpractice |
| UnaryPlusInConcatenation | Унарный плюс в конкатенации строк | Да | Блокирующий | Ошибка | suspiciousbrainoverload |
| UnknownPreprocessorSymbol | Неизвестный символ препроцессора | Да | Критичный | Ошибка | standarderror |
| UnreachableCode | Недостижимый код | Да | Незначительный | Ошибка | designsuspicious |
| UnsafeSafeModeMethodCall | Небезопасное использование функции БезопасныйРежим() | Да | Блокирующий | Ошибка | deprecatederror |
| UnusedLocalMethod | Неиспользуемый локальный метод | Да | Важный | Дефект кода | standardsuspicious |
| UnusedParameters | Неиспользуемый параметр | Да | Важный | Дефект кода | design |
| UseLessForEach | Бесполезный перебор коллекции | Да | Критичный | Ошибка | clumsy |
| UsingCancelParameter | Работа с параметром "Отказ" | Да | Важный | Дефект кода | standardbadpractice |
| UsingExternalCodeTools | Использование возможностей выполнения внешнего кода | Да | Критичный | Потенциальная уязвимость | standarddesign |
| UsingFindElementByString | Использование методов "НайтиПоНаименованию" и "НайтиПоКоду" | Да | Важный | Дефект кода | standardbadpracticeperformance |
| UsingGoto | Оператор "Перейти" не должен использоваться | Да | Критичный | Дефект кода | standardbadpractice |
| UsingHardcodeNetworkAddress | Хранение ip-адресов в коде | Да | Критичный | Уязвимость | standard |
| UsingHardcodePath | Хранение путей к файлам в коде | Да | Критичный | Ошибка | standard |
| UsingHardcodeSecretInformation | Хранение конфиденциальной информации в коде | Да | Критичный | Уязвимость | standard |
| UsingModalWindows | Использование модальных окон | Да | Важный | Дефект кода | standard |
| UsingObjectNotAvailableUnix | Использование объектов недоступных в Unix системах | Да | Критичный | Ошибка | standardlockinos |
| UsingServiceTag | Использование служебных тегов | Да | Информационный | Дефект кода | badpractice |
| UsingSynchronousCalls | Использование синхронных вызовов | Да | Важный | Дефект кода | standard |
| UsingThisForm | Использование устаревшего свойства "ЭтаФорма" | Да | Незначительный | Дефект кода | standarddeprecated |
| WrongUseOfRollbackTransactionMethod | Некорректное использование метода ОтменитьТранзакцию() | Да | Критичный | Ошибка | standard |
| YoLetterUsage | Использование буквы "ё" в текстах модулей | Да | Информационный | Дефект кода | standard |