Kỹ thuật debug đỉnh cao: Rubber ducking
NỘI DUNG BÀI VIẾT
Vịt cao su (Rubber ducking) không chỉ là một cụm từ hài hước mà nó là một kỹ thuật debug vô cùng hiệu quả cho các developer. Đơn giản về bản chất nhưng mạnh mẽ trong việc thực hiện, rubber ducking có thể giúp bạn tiết kiệm rất nhiều thời gian khi gặp khó khăn với những dòng mã mà chính mình viết ra.
Rubber ducking là gì?
Phương pháp gỡ lỗi đằng sau khái niệm này thực sự rất đơn giản – bạn hãy cố gắng giải thích mã của bạn cho ai đó hoặc với một vật vô tri, như là con vịt cao su chẳng hạn. Điều này sẽ giúp bạn có thể phá vỡ những khúc mắc đang khiến bạn phải loay hoay với những dòng code của mình. Bằng cách đó, bạn buộc phải thoát ra khỏi dòng những suy nghĩ ban đầu về code của mình và bắt đầu giải thích về những gì đang xảy ra với code của bạn. Cứ lặp đi lặp lại các này, một lập trình viên có thể nhập tâm vào vấn đề và xử lý nó mà không cần phải dùng đến Google.
Nguồn gốc của từ vịt cao su này cũng rất thú vị, bắt nguồn từ một câu chuyện trong cuốn sách Pragmatic Programmer về một chàng lập trình viên luôn mang theo một con vịt cao su bên mình và anh luôn giải thích từng dòng mã của anh với con vịt cao su đó. Thật buồn cười đúng không? Nhưng nó lại mang lại hiệu quả bất ngờ trong việc tìm ra lỗi và sửa chữa nó.
Phương pháp này hoạt động như thế nào?
Chúng ta đều hiểu rằng vịt cao su không biết gì về code, nên khi giải thích cho nó, bạn phải dùng các thuật ngữ thực sự đơn giản, theo cách mà một người mới bắt đầu có thể hiểu được. Điều này sẽ loại bỏ các thông tin không liên quan trong lời giải thích của bạn và mọi thứ sẽ được làm sáng tỏ hoàn toàn.
Hãy nhớ rằng, rubber ducking không phải là một phương pháp kỹ thuật đòi hỏi kiến thức cao siêu về lập trình, mà rubber ducking đơn giản chỉ là một phương pháp đánh vào tâm lý. Rubber ducking cho phép bạn thoát ra khỏi tâm thế là một người viết code và bạn đang giải thích về nó dưới góc nhìn của một người thứ ba và ko biết về lập trình
Có một lưu ý bên lề là, dù sao thì vịt cao su cũng là một vật vô tri vô giác, vậy tại sao không áp dụng điều này với đồng nghiệp của mình? Nếu bạn nghĩ rằng việc giải thích với con vịt cao su dễ thương có thể làm nên điều kỳ diệu, hãy tưởng tượng cảm giác tuyệt vời khi bạn nói chuyện với người khác và họ có thể cho bạn một số lời khuyên về vấn đề của bạn.
Ngay bây giờ, nếu bạn đang gặp khúc mắc với các dòng code, hãy thử kiếm một vật vô tri nào đó và cố gắng giải thích cho chúng. Hoặc nếu có thể, hãy thử ngồi nói chuyện với một bạn tester hoặc comtor trong dự án của mình. Điều này thực sự có ý nghĩa khi bạn và cả những người trong dự án đều có thể lắng nghe nhau và tìm ra giải pháp cho một vấn đề.
Một lưu ý nho nhỏ, nếu bạn cố giải thích code của bạn với vợ của mình, bạn có khả năng vào bệnh viện sớm hơn dự kiến!
Kết
Kỹ thuật này thật sự không cần áp dụng bất kỳ kiến thức lập trình nào, rất dễ thực hiện nhưng hiệu quả lại vô cùng bất ngờ. Thay vì debug, bạn cũng có thể áp dụng nó vào các khúc mắc trong cuộc sống hằng ngày để tìm ra lời giải cho chính bản thân mình.
Nguồn: https://codelearn.io/sharing/ky-thuat-debug-dinh-cao-rubber-ducking
Leave a Reply