Coding conventions trong lập trình

Coding conventions

Coding conventions là tập hợp những nguyên tắc chung khi lập trình nhằm làm cho code dễ đọc, dễ hiểu, do đó dễ quản lý, bảo trì hơn.
Coding conventions có những cái chung và cái riêng tuỳ ngôn ngữ, tuỳ cộng đồng, nhưng hầu hết được công nhận và đi theo bởi đa số các lập trình viên trên thế giới.

Quy tắc đặt tên (naming convention)

Các cú pháp thông dụng

Cú pháp lạc đà (camelCase)

Ký tự đầu tiên của từ đầu tiên viết thường những ký tự đầu tiên của những từ tiếp theo được viết hoa.
Ví dụ: productPrice, camelCasing, thisIsTheNameThatFollowTheCamelCase

Cú pháp Pascal (PascalCase)

Cú pháp Pascal viết hoa chữ cái đầu tiên của mỗi từ.
Ví dụ: ProductName, PascalCasing, ThisIsTheNameThatFollowThePascalCase

Cú pháp con rắn (snake_case)

Với pháp con rắn, tất cả các chữ cái đều viết thường, và các từ cách nhau bởi dấu gạch dưới.
Ví dụ: user_name, this_is_the_name_that_follow_the_snake_case
Việc sử dụng cú pháp nào là tuỳ vào mỗi ngôn ngữ, mỗi cộng đồng định nghĩa, nhưng chung quy đều dùng ba cú pháp này, và kèm theo các nguyên tắc:
– Tên lớp thì đặt theo PascalCase
– Tên biến, tên hàm đặt theo camelCasehoặc snake_case
– Hằng số đặt theo UPPER_CASE, vd: CLICK_COUNTER
– Tên biến, tên lớp thường là danh từ, cụm danh từ hoặc tính từ: UserModel, userName, downloadCounter, isDownloaded
– Tên hàm thường bắt đầu bằng động từ: getUserName, setUserModel, increaseDownloadCounter
– Tên thì phải có nghĩa, KHÔNG ĐƯỢC đặt tên kiểu viết tắt (dlCounter, uName, idl, a, a1, doFA)
– Tránh đặt những tên quá chung chung, tối nghĩa: top, best, doIncrease, getAll

Quy tắc về số lượng

Bob Martin phát biểu trong cuốn Clean Code: “if small is good, then smaller must be better”.
Số lượng dòng code trong hàm/lớp, số lượng hàm trong lớp, số lượng lớp trong gói phải giữ ở một giới hạn nhất định nào đó, và nên giữ càng ít càng tốt, ví dụ:
– Hàm không nên quá 30 dòng (Martin Lippert-rule 30)
– Lớp không nên vượt quá 500 dòng (Clean Code)
– Một hàm không được vượt quá 5 tham số, (nên giữ <=3)(Clean Code)
– Một hàm chỉ làm duy nhất 1 việc, trong trường hợp chính đáng, làm 2 việc cũng được phép, tuy nhiên tên hàm phải nói rõ điều này, vd: increaseDownloadCounterAndSaveToDatabase
– Khi khai báo biến, một dòng chỉ chứa một biến
– Một dòng không nên dài quá 80 ký tự (Oracle)
– Các câu lệnh lồng nhau tối đa 4 cấp

Quy tắc xuống hàng

Theo Oracle
– Nếu có dấu phẩy thì xuống hàng sau dấu phẩy ,
– Xuống hàng trước toán tử + -
– Nếu có nhiều cấp lồng nhau, thì xuống hàng theo từng cấp
– Dòng xuống hàng mới thì nên bắt đầu ở cùng cột với đoạn lệnh cùng cấp ở trên.

Comment

  • Hạn chế dùng comment để giải thích code, thay vào đó hãy cải thiện đoạn code.
  • Chỉ nên dùng comment trong trường hợp viết documentation cho thư viện, thông tin đính kèm cho class

Lập trình và hơn thế nữa

Spread the love
  •  
  •  
  •  
  •  
  •  

Leave a Reply

3 Comments on "Coding conventions trong lập trình"

Notify of
avatar
Sort by:   newest | oldest | most voted
trackback

[…] ngày làm việc, việc ghép code vẫn là một điều gian khổ: nào là test, nào là convention, nào là ghép phần code mình vào chắc gì đã chạy đúng, blah blah […]

trackback

[…] khai thác thêm khả năng tự động hóa của CircleCI để phục vụ việc kiểm tra coding convention và comment thẳng vào pull […]

trackback

[…] ngày làm việc, việc ghép code vẫn là một điều gian khổ: nào là test, nào là coding convention, nào là ghép phần code mình vào chắc gì đã chạy đúng, blah blah […]