Bug – thuật ngữ quen thuộc đến mức ám ảnh của dân lập trình, lần đầu tiên được phát hiện trên thế giới là “một con sâu bướm đã chết”, mắc kẹt bên trong chiếc máy tính Harvard Mark II và làm cho nó ngưng hoạt động. Bug ngày nay thì khác, nguyên nhân nó xuất hiện có thể là do code được viết không chính xác, lỗi trong trình biên dịch hoặc thậm chí là các vấn đề về phần cứng. Trong bài viết này, WorkLabs CodingSchool sẽ chia sẻ những cách để loại bỏ bug do lập trình viên vô tình tạo ra khi code.

Bạn không cần phải sử dụng hết tất cả những phương thức này để loại bỏ bug. Một số cách sẽ dễ dàng triển khai hơn những cách khác, và tốt nhât là bạn nên bắt đầu bằng những phương pháp đơn giản. Đơn giản khi nó chỉ tiêu tốn một vài phút để tìm ra bug, và bạn sẽ dễ dàng thay đổi phương pháp của mình khi bạn chưa tìm ra bug ở đâu.

Sử dụng lệnh Print

Đây có thể xem là cách thức đơn giản nhất để phát hiện bug, vì tất cả các ngôn ngữ lập trình sẽ có một hoặc nhiều câu lệnh để thể hiện kết quả của dòng code mà bạn muốn theo dõi. Bạn không cần phải sử dụng một công cụ nào khác để tìm bug bằng phương pháp này.

Khi bạn nghĩ hay đoán rằng dòng code đó có thể tạo ra lỗi khi chạy ứng dụng của mình, bạn hãy dùng lệnh print để xem xem dòng code đó hiện kết quả lên có đúng như bạn mong đợi không. Hay nói cách khác, là có bug ở dòng code này không.

Sử dụng công cụ Error handling

Khi chạy ứng dụng của mình mà không sử dụng công cụ để hành động khi gặp lỗi, bạn sẽ gặp trường hợp ứng dụng của mình bị crash. Sự có mặt của Error Handling giúp bạn lưu lại lỗi có thể xảy ra trong khi chạy ứng dụng, trước khi ứng dụng bị crash vì gặp lỗi.

Công cụ này thích hợp cho việc tìm và xử lý bug trong môi trường giống như những gì khách hàng bạn đang sử dụng ứng dụng, vì những lỗi xuất hiện sẽ được lưu trữ lại, và phân tích xử lý xem bug nào đã gây ra những vấn đề này.

Sử dụng lệnh comment 

Đây cũng là một cách thức đơn giản để bạn có thể phát hiện ra bug. Những dòng code được bạn comment sẽ không được xử lý khi bạn chạy ứng dụng của mình. Bằng cách comment một số dòng code mà bạn cho là nguyên nhân gây nên lỗi, và bạn thấy ứng dụng của mình chạy mượt mà khi không có những dòng code mà bạn mới comment. Điều này cho bạn biết chính xác được ứng dụng của mình gặp bug với những dòng code này.

Sử dụng công cụ Debugging tools 

Sử dụng Debugging tools là một cách phức tạp nhất trong việc tìm kiếm bug khi phát triển một ứng dụng. Chúng thường được gắn vào trong môi trường phát triển tích hợp (IDEs) mà các lập trình viên thường dùng để code. Ví dụ, như bạn có thể thấy những Debugging tools được phát triển cùng với trình duyệt như Chrome và Firefox để phát hiện bug trong quá trình thiết kế ứng dụng.

Debugging tools giúp bạn tạo ra các điểm “dừng” chủ động trong bản code của mình. Khi bản code này chạy, nó sẽ ngưng hoạt động tại điểm “dừng”. Từ đó, bạn có thể đọc và phân tích từng từng dòng code cụ thể để truy tìm bug. Đây là cách thức tốt để bạn có thể phát hiện ra những bug khó tìm nhất, nhưng cũng là cách thức không cần thiết khi các phương pháp khác vẫn đang hoạt động hiệu quả.

Sử dụng các bài kiểm tra 

Phương pháp phát hiện bug tiếp theo là thêm các kiểm định vào những dòng code của bạn. Những bài kiểm định này có thể là “unit tests”. “integration tests”. “functional tests”,…

Để ứng dụng của bạn có thể chuyển tiếp qua từng bước, thì điều trước tiến là kết quả chúng trả về phải vượt qua những yêu cầu trong các bài kiểm định ở mỗi bước.

Hỏi những lập trình viên khác trong team

Dù đây là phương pháp cuối cùng trong danh sách này, tuy nhiên đây là phương pháp quan trọng nhất và thường bị bỏ quên. Phần lớn thời gian của bạn khi viết code đó là phối hợp làm việc này chung với các lập trình viên khác trong cùng một dự án, và thường bạn sẽ tìm thấy một vài người có kinh nghiệm hơn bạn để hỏi thăm. Kể cả nếu như không phải vậy, thì có thể họ cũng gặp phải những bug giống bạn trong những trường hợp khác. Và bạn sẽ không biết được điều này nếu như bạn không đặt câu hỏi cho họ.

Bên cạnh đó, đây sẽ là cơ hội tuyệt vời để team của bạn có thể dành thời gian nhìn vào bản code và thảo luận về nó. Trong quá trình đó, bạn sẽ có thêm nhiều góc nhìn mới hơn về cách thức tìm và sửa chữa code của chính mình.

Tóm lại 

Bug chính là một phần gần như không thể thiếu được trong quá trình xây dựng một ứng dụng nào đó. Vì vậy, nếu bug xuất hiện trong những dòng code bạn thì có nghĩa là bạn đang đi đúng hướng trên con đường trở thành một lập trình viên rồi đó. Vì chính những lập trình viên nhiều năm kinh nghiệm cũng không thể viết một bản code không có bug. May mắn là đã có nhiều cách để phát hiện ra bug và sửa chữa nó.

Phương pháp đơn giản nhất chính là sử dụng lệnh print hay chuyển hết những dòng code của bạn sang dạng comment cho đến khi lỗi biến mất. Hay sử dụng phương pháp nâng cao hơn là tích hợp debugging tools vào môi trường xây dựng sản phẩm, và công cụ kiểm định trước khi ứng dụng của bạn được khách hàng sử dụng. Bạn cũng có thể dùng công cụ error handling để lập báo cáo về những bug mà không phải cho người dùng thấy chúng. Không những vậy, đừng bỏ qua cơ hội hỏi những người đồng đội khác về code của bạn. Bởi đôi khi họ sẽ là người giúp bạn phát hiện bug hoặc đưa ra những gợi ý hướng dẫn phù hợp cho bạn.

Và bạn biết không, cách để nâng cao khả năng phát hiện bug chính là tiếp tục viết code. Nếu lập trình là hứng thú của bạn thì hãy để WorkLabs CodingSchool đồng hành cùng bạn trong quá trình rèn luyện nâng cao kỹ năng này nhé. </>

*Nguồn bài viết: How to debug your code – Codeacademy