1947年,哈佛大學的工程師發現一隻飛蛾被困在Mark II計算機的一個繼電器裡。他們把飛蛾的照片貼在日誌上,並寫道:「這是發現的第一個真正的bug案例」。調試是指尋找並修復程式碼錯誤的過程。儘管大多數bug並非昆蟲,但「調試」這個詞卻沿用至今。
程式錯誤種類繁多,從拼字錯誤到邏輯錯誤再到競態條件,不一而足。缺少分號會導致編譯停止。錯誤的變數名稱會產生錯誤的結果。競態條件僅在兩個執行緒以特定順序運行時才會出現。有些錯誤很容易發現,而有些則需要數天才能重現。
調試技巧
- 列印語句:在關鍵點輸出值
- 斷點:暫停執行並檢查狀態
- 橡皮鴨調試法:大聲解釋程式碼
- 二分查找:縮小錯誤出現範圍
- 版本控制:比較正常運作的版本和出現問題的版本
調試就像偵探工作。你要提出假設,驗證假設,排除各種可能性。優秀的調試人員耐心且條理清晰。他們不靠猜測,而是觀察。
Comments
No comments yet. Be the first to share a thought.
Leave a comment