130 likes | 324 Views
Nhóm 24. CODing STANDARD. Tầm quan trọng của chuẩn mã nguồn Chuẩn cú pháp Chuẩn ngữ nghĩa Phương pháp áp dụng chuẩn mã nguồn Các chuẩn mã nguồn thông dụng Các công cụ hỗ trợ chuẩn mã nguồn. Nội dung tìm hiểu. Có nhu cầu phát triển dự án dựa trên các hệ thống lớn đã có sẵn
E N D
Nhóm 24 CODing STANDARD
Tầm quan trọng của chuẩn mã nguồn Chuẩn cú pháp Chuẩn ngữ nghĩa Phương pháp áp dụng chuẩn mã nguồn Các chuẩn mã nguồn thông dụng Các công cụ hỗ trợ chuẩn mã nguồn Nội dung tìm hiểu
CónhucầupháttriểndựándựatrêncáchệthốnglớnđãcósẵnCónhucầupháttriểndựándựatrêncáchệthốnglớnđãcósẵn Tăngtínhchặtchẽ, dễđọc, dễbảotrìcủamãnguồn TẦM QUAN TRỌNG CỦA ViỆCCHUẨN HOÁ MÃ NGUỒN
Tên lớp: UpperCamelCase. • Tên phương thức: UpperCamelCase hay LowerCamelCase. • Các thuộc tính của lớp: LowerCamelCase, thêm tiền tố ‘m’ ở trước, nếu thuộc tính con trỏ thì thêm ‘mp’. • Các tham số của phương thức : đặt tên theo quy tắc LowerCamelCase. • Tên biến Stack : LowerCamelCase, thêm tiền tố ‘s’ ở trước. CHUẨN CÚ PHÁP
Tên biến con trỏ : LowerCamelCase, thêm tiền tố ‘p’ ở trước, dấu * đặt gần kiểu của con trỏ thay vì đặt gần tên biến con trỏ. • VD : String* pName = new String; • Các tham chiếu và hàm trả về : nên thêm tiền tố ‘r’ ở đằng trước. • VD: void DoSomeThing(StatusInfo& rStatus); • Biến toàn cục : thường thêm tiền tố ‘g’ • Hằng số toàn cục : thường viết hoa và phân cách các từ bới dấu ‘_’. (VD: int GLOBAL_CONST=5) CHUẨN CÚ PHÁP
Biến kiểu Static : thường thêm tiền tố ‘s’ • VD : static StatusInfo msStatus; • Dùng dấu // để viết chú thích • Các lớp Interface thường thêm tiền tố ‘I’ • Không nên và hạn chế dùng các kí tự có thể gây nhầm lẫn để đặt tên cho biến và lớp như ‘o’, ‘0’, ‘1’, ‘l’,… • Mỗi file nên có 1 Header Block và mô tả về file đó trong #region….#endregion • Không nên thay đổi biến đếm trong vòng lặp ‘for’ CHUẨN CÚ PHÁP
Sau “if, else , while, do, for, switch” nên thêm vào 1 đoạn code, mặc dù là đoạn code trống VD: if(true) { value = 10; } else {} • Trong cấu trúc câu lệnh ‘switch’ phải có nhãn ‘default’ ở dưới nhãn ‘case’ cuối cùng CHUẨN CÚ PHÁP
Tên lớp phải có ý nghĩa, là danh từ hay cụm danh từ, thể hiện tên của 1 đối tượng. • VD: public class MyCircle { // } • Tên hàm phải có nghĩa, nên đặt tên theo mục đích của hàm • VD: void DrawCircle(int iPoint, int iR); • Các hàm trả về kết quả boolean nên đặt tên ở dạng câu hỏi • VD: bool IsLeap(int iYear); CHUẨN NGỮ NGHĨA
Đặttêntập tin Lùi đầu dòng Quyướcđặttên Quảnlýtiếntrình Cácngoạilệ ÁP DỤNG CHUẨN MÃ NGUỒN
ISO IEEE các số chuẩn mã nguồn thông dụng
Đangôn ngữ • PMD • Sonar • Yasca CÁC CÔNG CỤ HỖ TRỢ CHUẨN MÃ NGUỒN
.NET • StyleCop • FxCop • GenDarme • C/C++ • cppcheck • Lint • Splint CÁC CÔNG CỤ HỖ TRỢ CHUẨN MÃ NGUỒN
Java • CheckStyle • Soot • Squale • JavaScript • Closure Compiler • JSLint CÁC CÔNG CỤ HỖ TRỢ CHUẨN MÃ NGUỒN