コンテンツへスキップ
uencoder

Static Analysis

静的解析はプログラムを実行せずにソースコードやバイトコードを調べ、潜在的なバグ、セキュリティ脆弱性、スタイル問題を発見する。

目的

コンパイル時やコミット時に欠陥を早期発見し、実行時の障害と修正コストを減らす。

メカニズム

字句・構文解析で AST を構築し、データフロー・制御フロー解析で変数とパスを追跡する。型チェック、null ポインタ検出、未使用変数、循環的複雑度などがある。ツールは ESLint、SonarQube、Clang Static Analyzer である。

ユースケース

  • コード品質の保証
  • セキュリティ脆弱性のスキャン
  • CI のゲート

関連ツール

References