Static Analysis
Static analysis examines source code or bytecode without executing the program, finding potential bugs, security vulnerabilities, and style issues.
Purpose
Catch defects early at compile or commit time, reducing runtime failures and fix costs.
Mechanism
Lexical/syntactic analysis builds the AST; data-flow/control-flow analysis tracks variables and paths. Type checking, null-pointer detection, unused variables, cyclomatic complexity, and more. Tools: ESLint, SonarQube, Clang Static Analyzer.
Use cases
- Code quality assurance
- Security vulnerability scanning
- CI gates