Анализ кода · Code Analysis
Автоматический разбор исходного кода для поиска ошибок, уязвимостей и нарушений стиля без его выполнения.
Подробно
Анализ кода (статический анализ) — это процесс автоматической проверки исходников инструментами, которые строят AST и модели потоков данных, не запуская программу. Он нужен для раннего выявления багов, потенциальных уязвимостей (SAST), нарушений кодстайла и проблем поддерживаемости ещё до код-ревью и деплоя. Применяется в CI/CD-пайплайнах (SonarQube, ESLint, Pylint, CodeQL, Semgrep), в IDE-плагинах и в pre-commit-хуках. Отдельно выделяют динамический анализ (DAST), линтеры, проверку типов и метрики сложности вроде цикломатической. Современные платформы добавляют к правилам ML-модели и LLM-ревью, что усиливает анализ кода на больших репозиториях.
Примеры употребления
- sonar-scanner -Dsonar.projectKey=myapp -Dsonar.sources=src
- eslint src/ --ext .ts
- python -m pylint mymodule.py
- CI падает, если статический анализ кода находит критические уязвимости.
