You are on page 1of 2

Typical defects discovered by static analysis tools include:

. Referencing a variable with an undefined value


. Variables that are not used or are improperly declared
· Unreachable code, dead code
. Missing and erroneous logic (potentially infinite loops)
. Overly complicated constructs
· Programming standards violations
· Security vulnerabilities
. Syntax violations of code and software models
Variables are declared but never used
The loop runs infinitely
The loop does not run out of array values
The declared variable is not structured correctly
Missing semicolon

Docs SWT
Câu 1:
Tổng hợp các mã lỗi
+ Function names in Java must be written in camelCase,
rather than PascalCase:
Vì code là java nên phải tuân thủ theo các java viết, là tên
hàm phải có dạng camelCase (exampleFunction()) chứ
không thể có dạng PascalCase (ExampleFunction)
+ Local variable sum should be initialize …
Để ý kĩ vị trí khai báo biến, nếu biến cần khai báo trong
vòng lặp thì phải khai báo trong vòng lặp, còn nếu ngoài
thì phải khai báo ngoài. Nó phụ thuộc logic chứ mắt
thường khó thấy.
+ should use Logger instead || should not use
System.out.print
Thấy system.out.print => chuyển sang logger
+ ArrayIndexOutOfBoundsException
+ Lỗi này dễ thấy nếu có vòng lặp loại (for int i = 0; i <=
ar.length; i++), thì dấu <= nó gây ra lỗi out of bound, vì
đúng sẽ là (for int i =0; i < ar.length; i++)
+ Variable has not initialized yet
+ Lỗi gây ra khi mà biến chưa được khai báo mà đã sử
dụng, ví dụ như for(j = 0; j <= I; j ++)
+ When compares 2 variables and digit, we use == not =
+ Declare unusable local variable
Khai báo biến mà không sử dụng
+ … trên là thường gặp
Các lỗi điển hình được phát hiện bởi các công cụ phân tích tĩnh bao gồm:
. Tham chiếu một biến có giá trị không xác định
. Các biến không được sử dụng hoặc được khai báo không đúng
· Mã không truy cập được, mã chết
. Logic bị thiếu và sai (có thể có vòng lặp vô hạn)
. Cấu trúc quá phức tạp
· Vi phạm tiêu chuẩn lập trình
· Lỗ hổng bảo mật
. Vi phạm cú pháp của mã và mô hình phần mềm
Biến được khai báo nhưng không bao giờ được sử dụng
Vòng lặp chạy vô hạn
vòng lặp duyệt không hết giá trị của mảng
Biến khai báo không đúng cấu trúc
thiếu dấu chấm phẩy

You might also like