Lời dẫn: comment, hay là lời ghi chú, là thành phần không thể thiếu trong viết mã, câu tóm tắt “Code Tells You How, Comments Tell You Why” nói lên tất cả. Nếu không ghi chú, lúc xem lại mã cũ đúng là ác mộng. Robert C. Martin trong cuốn clean code còn dành hẳn một chương nói về chuyện comment.
Nhưng không phải lập trình viên nào cũng nghĩ như vậy, nhất là trong đời coder khối lúc cần phải xả stress; đôi khi ghi chú là lựa chọn tốt cho việc xả ức chế (vì chả lẽ lại xả stress vào code, boss hay vào người thân), thôi cứ xả ức chế vào cho người đến sau, lúc đó mình cũng đang ở đâu rồi :). Hãy xem qua một vài ghi chú (có thật) dưới đây để xem các đồng đạo làm việc này thế nào nhé.
1 2 | // When I wrote this, only God and I understood what I was doing // Now, God only knows |
⇒ Khi tôi viết đoạn này, chỉ Chúa và Tôi hiểu, giờ thì mỗi Chúa hiểu thôi
1 2 3 | // I dedicate all this code, all my work, to my wife, Darlene, who will // have to support me and our three children and the dog once it gets // released into the public. |
⇒ Tôi dành tặng đống mã này, toàn bộ công việc của tôi, tới vợ tôi, Darlene, người sẽ phải cưu mang tôi và 3 đứa trẻ cộng 1 chú chó ngay khi đoạn mã này được phảt hành công khai.
1 | // drunk, fix later |
⇒ say rồi, sửa sau
1 | // Magic. Do not touch. |
⇒ Ma thuật. Đừng có động vào.
1 2 | #define TRUE FALSE // Happy debugging suckers |
⇒ (mã C/C++)
Định nghĩa: ĐÚNG = SAI
// chúc mừng mấy chú gỡ rối trẻ trâu
1 | long long ago; /* in somewhere far far away */ |
⇒ (mã C/C++)
ngày xửa ngày xưa; /* ở một xứ sở xa rất xa */
1 2 3 4 5 6 | /** * Always returns true. */ public boolean isAvailable() { return false; } |
⇒ (mã C/C++)
/* luôn luôn trả lời đúng */
kiểm tra: rảnh-không?
trả lời: không-rảnh;
1 | // If this comment is removed the program will blow up |
⇒ Nếu dòng ghi chú này bị xóa thì chương trình sẽ nổ tung
1 2 | // I am not responsible of this code. // They made me write it, against my will. |
⇒ Tôi không chịu trách nhiệm về đoạn code này. Tụi nó bắt tôi viết chứ không phải tôi muốn.
1 2 | // it was hard to write // so it should be hard to read |
⇒ nó khó viết, thì tất nhiên sẽ khó đọc
1 | // Peter wrote this, nobody knows what it does, don't change it! |
⇒ Peter đã viết đoạn mã này, không ai biết nó làm gì, đừng có sửa nó!
Và cuối cùng, đoạn ghi chú trong mã HTML của trang ilmanifesto.info (ảnh chụp vào ngày 9 tháng 12 năm 2013, hiện đoạn ghi chú này đã bị xóa).
hay dữ í