
Code Convention Là Gì? Không Thể Bỏ Qua Những Quy Tắc Viết Code “Vàng”
“Code convention là gì?” – Đây là câu hỏi mà nhiều người đặt ra khi họ mới làm quen với lập trình, lập trình, phát triển phần mềm… Các khối mã vốn đã phức tạp và chứa nhiều thành phần. Vì vậy, chúng cần được xây dựng trên những quy tắc chung để dễ nhìn và dễ hiểu. Chính vì lý do đó mà Công ước Quy tắc ra đời. Hãy cùng tìm hiểu kỹ hơn về vấn đề này trong bài viết dưới đây.
Giới thiệu chung về các code convention là gì
Quy ước mã là gì?
Tiêu chuẩn mã hóa được hiểu đơn giản là “quy ước mã”. Tóm lại, quy ước mã là một tập hợp các quy ước và quy tắc chung được áp dụng khi viết mã. Đó là các quy tắc số lượng, quy tắc dỡ tải, quy tắc đặt tên cho lớp, hằng, biến… Khi mã được cấu trúc theo các quy ước này, các khối mã trở nên “sạch hơn, dễ nhìn, dễ hiểu hơn”.
Các quy tắc mã là cực kỳ quan trọng đối với các dự án phát triển phần mềm lớn đòi hỏi nhiều lập trình viên. Dựa trên các quy ước chung, các thành viên trong nhóm phát triển có thể dễ dàng giao tiếp và hiểu ý tưởng của người khác. Việc phát triển hoặc duy trì hệ thống bằng cách thêm các mô-đun chức năng vào phần mềm cũng nhanh hơn.
Quy ước mã nghĩa là gì?
Sau khi hiểu quy ước mã hóa hay tiêu chuẩn mã hóa là gì. Chắc hẳn bạn đang thắc mắc tại sao lại cần quy ước mã? Trên thực tế, việc hoàn thành một dự án phần mềm cần có sự hợp tác của nhiều người chứ không chỉ cá nhân (trừ những trường hợp đặc biệt).
Đó là lý do tại sao phong cách viết mã của mọi người là khác nhau. Các thành viên khác sẽ rất khó hiểu những gì bạn đang viết. Sau đó, chắc chắn là những câu hỏi như: “Đây là gì?”, “Bạn có thể giải thích địa điểm này cho tôi được không?”…
Nhiều người thắc mắc Vai trò của Quy ước là gì?
Từ ví dụ trên, có thể dễ dàng hiểu ý nghĩa của Quy ước mã hóa là gì:
Giúp quá trình làm việc nhóm diễn ra suôn sẻ và đạt hiệu quả cao
Mọi thành viên đều tuân theo những quy tắc giống nhau, tạo nên sự đồng bộ cao
Giúp các thành viên khác hiểu mã bạn viết dễ dàng hơn
Tạo điều kiện thuận lợi cho việc bảo trì và nâng cấp phần mềm
Các quy ước chung có thể áp dụng cho nhiều dự án khác nhau
Mã có thể được sử dụng lại trong quá trình triển khai phần mềm khác
Cho phép người viết mã dễ dàng phát hiện lỗi và sửa chúng
Các quy tắc chung của Quy ước Mã là gì?
quy ước đặt tên
Khi viết mã, bạn cần đặt tên hoặc xác định các lớp, hằng, biến … đó là lý do tại sao các quy ước đặt tên hay “quy ước đặt tên” ra đời với một cú pháp khác. Các cú pháp khác nhau được sử dụng tùy thuộc vào ngôn ngữ. Tuy nhiên, hầu hết các công ty phần mềm ngày nay đều sử dụng tiếng Anh làm quy tắc nhận dạng. Các phương án đặt tên phổ biến nhất là:
camelCase
Với ngữ pháp này, từ đầu tiên của cụm từ sẽ là chữ thường. Khi đó chữ cái đầu tiên của các từ sau sẽ được viết hoa. Cú pháp Camel thường được áp dụng cho tên phương thức, biến hoặc hàm.
Ví dụ về các hàm hoặc phương thức: getOnTop (), runLow (), lastName, firstName…
Ví dụ về các biến, float spaceX, int i …
Cú pháp Snake (solid_case)
Cú pháp Snake yêu cầu tất cả các chữ cái phải là chữ thường. Bạn cũng có thể sử dụng dấu gạch dưới “_” để phân tách các từ. Tuy nhiên, đối với một số ngôn ngữ hoặc tình huống, tất cả các chữ cái có thể được viết hoa hoàn toàn. Cú pháp này phổ biến khi đặt tên cho các hằng số, và đôi khi cú pháp giống như con rắn được sử dụng để đặt tên cho các chương trình.
Ví dụ: final_final1_final2, MAX_SELECT…
Sự khác biệt giữa cú pháp lạc đà và cú pháp rắn trong quy ước mã là gì
PascalCase
Khi ngữ pháp này được áp dụng, tất cả các chữ cái đầu tiên của mỗi từ trong cụm từ sẽ được viết hoa. Cú pháp này thường được sử dụng cho tên lớp và đôi khi cả tên biến.
Ví dụ: lớp MickeyMouse, lớp Mice …
Ví dụ về trường hợp của Pascal
Lưu ý khi đặt tên
Có một số điều quan trọng cần ghi nhớ khi áp dụng các quy ước đặt tên:
Tên biến và tên lớp thường là danh từ
Tên hàm thường bắt đầu bằng một động từ
Đặt tên phải được liên kết với chức năng
Không sử dụng các từ viết tắt gây nhầm lẫn cho người đọc
Tránh đặt những cái tên vô nghĩa
luật lượng
Quy tắc về số lượng khi viết mã được đề cập đến trong cuốn sách quy tắc của Oracle “Tái cấu trúc trong các dự án phần mềm lớn: Martin Lippert’s Thành công Thực hiện Tái cấu trúc Phức tạp” hoặc “Sổ tay Thủ công Phần mềm Agile” của Robert C. Martin. Cụ thể, quy tắc này như sau:
Một lớp không được vượt quá 500 dòng
Một hàm không được vượt quá 30 dòng
Không nên có nhiều hơn 5 tham số trong một hàm
Một câu lệnh có thể được lồng vào nhau lên đến 4 cấp độ
Một dòng mã không được dài hơn 80 ký tự
…
Nhiều người muốn biết quy tắc số trong Quy ước mã là gì
Quy tắc bình luận
Mã không nên được giải thích bằng các chú thích, nhưng nên áp dụng các quy ước đặt tên khi viết mã để làm cho chúng dễ hiểu hơn
Nếu bạn chưa quen với lập trình, bạn có thể sử dụng tính năng bình luận để giải thích những đoạn mã phức tạp
Nhận xét phải giải thích tại sao, không phải như thế nào
Bạn chỉ nên nhận xét ngay sau khi hoàn thành một đoạn mã, không nên sau khi viết toàn bộ mã
Chính sách hoàn trả
Quy tắc dòng mới được xác định bởi bộ quy tắc Oracle như sau:
Đối với các chức năng đa cấp, một dòng mới nên được cung cấp cho mỗi cấp
Mã ở cùng cấp phải được viết trong cùng một cột, khi dòng mới phải bắt đầu ở cùng cấp với dòng trên
Một dòng mới trước một toán tử, chẳng hạn như?, *, -, +…
Câu hỏi thường gặp về quy ước mã
Có thể viết mã mà không có quy ước mã hóa không?
Có, phần mềm sẽ vẫn hoạt động miễn là bạn viết đúng mã. Nhưng khi nói đến bảo trì, nâng cấp phần mềm hoặc tìm và sửa lỗi, bạn sẽ gặp rất nhiều khó khăn.
Nhiều người thắc mắc Quy ước viết mã là gì? Có thể viết mã mà không có quy tắc?
Các quy ước viết mã Java là gì?
Các quy ước mã hóa (tiêu chuẩn mã hóa) trong Java bao gồm:
Quy tắc Khoảng trắng: Thụt lề và Dòng trống
Quy tắc về dấu ngoặc đơn và dấu ngoặc
Quy tắc bình luận
Quy tắc đặt tên: quy tắc viết hoa (Pascal case, Camel case …), đặt tên lớp trừu tượng, giao diện, lớp, biến …
sử dụng các biến
Nhập thư viện để sử dụng
…
Các quy ước mã hóa C # là gì?
Các quy ước mã hóa trong C # bao gồm:
Các quy ước viết hoa: Chữ hoa Pascal, Chữ hoa Camel, Chữ hoa…
Cách tổ chức tệp trong dự án: tệp mã nguồn C #, thư mục mã nguồn C # …
Các quy ước đặt tên biến: không gian tên, lớp, giao diện, thuộc tính, kiểu liệt kê …
…
Sau khi đọc bài viết này, bạn phải có ý tưởng về các code convention là gì. Bộ quy tắc viết mã rất linh hoạt và có thể được chỉ định theo các ngôn ngữ khác nhau, các đơn vị phát triển phần mềm hoặc các dự án khác nhau. Chúng tôi hy vọng các bài viết của chúng tôi sẽ giúp ích cho bạn trong quá trình viết mã và lập trình phần mềm của bạn!