Xin các anh kinh nghiệm khi đọc code?

Dạ tình hình là em đang cùng team làm vài game nhỏ lấy kinh nghiệm, mà nhiều lúc đọc code người ta mà em chả hiểu họ đang viết cái gì :smile: mặc dù những kiến thức đó em có học qua rồi :’( Mấy anh có kinh nghiệm gì xin bày giúp em :blush:

1 Like

Em đừng chỉ đọc không thôi. Em thử sửa code đó và chạy lại xem, chỗ nào có in text ra thì thử sửa xem. Hoặc thử in thêm một số dòng để debug xem chương trình chạy như thế nào.

Lúc mới học lập trình cái khó là hiểu được code của người khác. Em phải học bằng cách sửa thử code của người ta chứ không thể chỉ đọc không thôi mà được.

4 Likes

Nhiều khi cũng khó lắm anh @ltd ơi, ví dụ được giao cho cái code C viết về graphics, trời ơi cả 50 file.c file nào cũng gần trăm cái functions không biết debug bằng cách nào luôn.

:slight_smile: nếu em đã học qua nhưng đọc người ta viết ko hiểu thì có thể là hiểu không kĩ. hãy làm như Đạt nói, em thử sửa code xem nó thay đổi thế nào, vì sao người ta lại viết như thế chứ ko phải viết kiểu khác, là mình thì mình sẽ viết ra sao. Tự đặt câu hỏi và tự trả lời.

Còn vấn đề project nhiều file. mình ko nhất thiết phải đọc hết mà chỉ đọc cái mình cần.

2 Likes

Cái này còn tùy vào người viết code ở một số đặc điểm như:

  • Cách đặt tên biến và hàm.
  • Cách mà đặt các hằng và định nghĩa ở các file.
  • Phong cách code cũng ảnh hưởng khoảng 10%.

Ví dụ cách viết rõ ràng như ở dưới có thể sẽ giúp người khác dễ hiểu phần nào.

#define bullet_damage 5 //define  a constant
.
.
.
//Define enum
enum   {
    PlayerWin, ComputerWin, Draw
};
.
.
.
bool    end_game;
Player* first_player;
Player* second_player;
.
.
.
void firstInitialize(); // Initialize for first player
void secondInitialize(); // Initialize for second player
bool checkCollided(); // check the player whether collides with the fence

Nếu người viết gõ phím một cách tiết kiệm sẽ khiến người khác khó đọc hơn.
Anh @ltd có tiết kiệm không :sunglasses:

1 Like

Đọc code từ dưới lên.
Nên đọc mã nguồn bản gốc, có chú thích, còn đọc bản đã nén thì dễ hư não lắm.

Hình như em bị trường hợp là nhiều file scripts quá , mà mỗi cái nó lại dính với nhau :sunny: thành ra em hông hệ thống được mấy cái dữ liệu :’( mà bạn đó đặt tên biến cũng ác nữa :last_quarter_moon: ở mỗi script đều đặt một tên biến y hệt nhưng lại khác chức năng ở mấy scripts còn lại :hammer: !!!

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?