Статический анализ кода: обзор инструмента OCLint
OCLint — это инструмент для статического анализа кода, написанного на С, С++ и Objective-C.
5К открытий5К показов
OCLint — инструмент, разработанный Ryuichi Laboratories, который проверяет программы на С, С++ и Objective-C на наличие следующих багов и ошибок:
- пустые конструкции
if
/else
/try
/catch
/finally
; - неиспользуемые локальные переменные и параметры;
- использование кода с высокой цикломатической и NPath сложностью;
- избыточное использование конструкций
if
и ненужных скобок; - код с запашком — использование длинных методов и длинных списков параметров;
- плохие практики написания кода — переназначение параметров, неправильное использование логики.
Функциональность OCLint
Статический анализ кода призван обнаруживать критические дефекты кода, которые не видны компилятору, но способны обрушить программу в будущем. OCLint автоматизирует процесс проверки кода при помощи расширенных функций:
- Динамическая загрузка правил в систему, даже во время выполнения;
- Гибкие и расширяемые конфигурации программы гарантируют пользователю настройку поведения OCLint именно под нужды каждого;
- Возможность вызова инструмента из командной строки вносит непрерывную интеграцию и постоянную проверку кода в процессе разработки. Это поможет исправлять все баги ещё на этапе разработки;
- Снижена вероятность ложных срабатываний инструмента для избежания ситуаций, когда полезный код может быть помечен как избыточный;
- Эффективность и точность инструмента основана на использовании абстрактного синтаксического дерева исходного кода.
Установка инструмента
OCLint является автономным инструментом, работающим на платформах Linux и macOS. Получить самую свежую версию 0.13 продукта вы можете, загрузив и самостоятельно скомпилировав исходный код, либо уже скомпилированные двоичные файлы программы.
Процесс установки подробно описан на специальной странице инструмента. Также доступно руководство пользователя с подробным описанием использования команд инструмента. Продукт распространяется под лицензией Modified BSD.
5К открытий5К показов