[Khóa học C++] Bài 11 - Whitespace and basic formatting

Share:

Whitespace là một thuật ngữ dùng để chỉ các ký tự cho mục đích định dạng trong khi viết code. Trong C++, các ký tự đó là khoảng trắng, dấu tab, và kí tự xuống hàng.
Điều quan trong là khi biên dịch (compile), trình biên dịch sẽ bỏ qua các whitespace này, nhưng với một vài ngoại lệ.

Hậu quả là trong ví dụ bên dưới, kết quả của cả 4 câu lệnh đi như nhau.

Thậm chí ở câu lệnh cuối cùng có ký tự xuống hàng, nhưng trình biên dịch vẫn hiểu để biên dịch đúng.

Những hàm bên dưới đây cũng cùng thực hiện một chức năng giống nhau.

Tuy nhiên, một ngoại lệ xảy ra khi bạn đặt whitespace vào một string (chuỗi) thì kết quả sẽ bị ảnh hưởng, ví dụ 2 string này là hoàn toàn khác nhau "Hello world!" và "Hello     world!".

Và kí tự xuống hàng không được cho phép trong string như ví dụ sau
std::cout << "Hello
     world!" << std::endl; // Not allowed!

Một ngoại lệ khác không cho phép ký tự xuống hàng là trong single comment (comment trên một hàng) như sau
std::cout << "Hello world!" << std::endl; // Here is a single-line comment
this is not part of the comment

Basic formatting

Không giống như các ngôn ngữ khác (như python), C++ không bắt buộc bạn trong việc phải định dạng khi viết code cho đúng format. Nhưng coding-style là cực kỳ quan trong trong việc viết code của lập trình viên. giúp cho code của bạn dễ đọc, dễ hiểu, dễ bảo trì.

Sau đây là một số đề nghị của chúng tôi khi các bạn viết code.

1) Dấu tab nên được cài đặt bằng 4 dấu space (khoảng trắng) (bạn có thể cài đặt trong phần setting của IDE mà bạn dùng), trong một số IDE, dấu tab được set mặc định bằng 3 dấu khoảng trắng. Bạn có thể cài đặt lại.

Bạn có thể sử dụng space hoặc tab để thụt đầu dòng khi viết code. Nhưng chúng tôi khuyên bạn nên dùng dấu space (bạn có thể nhấn space 2 hoặc 4 lần để thụt đầu dòng), trong một số công ty thì điều này là bắt buộc, lý do là vì khi bạn dùng dấu space, và bạn đổi qua một IDE hay Text Editor khác, định dạng code sẽ vẫn dữ nguyên, nhưng khi bạn dùng dấu tab, định dạng code có thể thay đổi. Việc dùng tab hay space cũng là một sự tranh cãi rất nhiều năm qua.

2) Dấu ngoặc nhọn {} nên được dùng 1 trong 2 trường hợp sau

Khi bạn viết mã nguồn C++, chúng tôi khuyên bạn nên dùng dấu ngoặc nhọn trong trường hợp 1 hơn, vì khi bạn gặp lỗi thiếu dấu ngoặc nhọn, bạn sẽ dễ dàng sửa lỗi hơn.

3) Mỗi câu lệnh nên được thụt đầu dòng bằng 4 dấu space (hoặc một dấu tab) như ví dụ bên dưới

4) Một dòng code của bạn không nên quá dài, thông thường là 72 hoặc 78 hoặc 80 ký tự là chiều dài tối đa cho trên một dòng.
Nhưng nếu một dòng code của bạn quá dài, bạn nên xuống dòng một cách hợp lý như ví dụ sau

5) Trong ví dụ trên thì khi một câu lệnh dài được tách thành 2 hay nhiều hàng và được tách ngay vị trí của các toán tử, thì toán tử nên nằm ở vị trí cuối của mỗi hàng. Bạn hãy nhìn lại toán tử << ở ví dụ trên.

6) Bạn nên sử dụng whitespace để code của bạn dễ đọc hơn như những ví dụ sau

Hay ví dụ bên dưới

Và đương nhiên, tutorial C++ này cũng sẽ follow theo những quy ước trên trong toàn bộ các bài viết. Khi sử dụng chúng đủ nhiều, bạn sẽ thuần thục chúng.

Khi bạn vào một doanh nghiệp hay một chuẩn nào đó thì bạn sẽ làm quen với các style viết code mới, nhưng chính bạn hãy từ từ hình thành một style riêng cho bản thân, mà bạn nghĩ coding-style của bạn là tốt nhất cho bạn.
Khi bạn làm việc nhóm, thì tất cả thành viên trong nhóm phải có chung coding-style.

Kết thúc



Không có nhận xét nào