小黃鴨調試法,又稱橡皮鴨調試法黃鴨除蟲法Rubber Duck Debugging)是可在軟件工程中使用的一種程式碼除错的方法。方法就是在程序的調試或測試過程中,操作人耐心地向小黃鴨解釋每一行程序的作用,以此來激發靈感與發現矛盾。

Thumb
在電腦旁「幫忙」代碼審查的小黃鴨

名稱由來

此概念是參照於一個故事。故事中程序大師隨身攜帶一隻小黃鴨,在程式碼除錯的時候會在桌上放上這隻小黃鴨,然後詳細地向鴨子解釋每行代碼。[1]

許多程序員都有向別人提問及解釋編程問題的經歷,而對象甚至可能是完全不懂編程的人。而就在解釋的過程中,程序員可能就發覺了問題的解決方案。一邊闡述代碼的意圖,一邊觀察它實際上的行為並做調試,兩者間的任何不協調都會變得更明顯,使人更容易發現錯誤所在。[2]如果沒有玩具小鴨,操作人也可以向其他任何東西傾訴,比如桌上的盆栽鍵盤鼠標等。

流行文化

2018年4月1日愚人節當天,問答網站Stack Exchange推出了名為「呱呱叫溢出(Quack Overflow)」的功能:一個小黃鴨形象會從網頁右下方冒出來,它會傾聽使用者的想法,並嘗試給出解決方案。實際上,這個小黃鴨形象會看起來在思考並且嘗試以文字回應,但最後只會以「呱呱」的鴨子叫聲來回應使用者。Stack Exchange宣稱這一功能與小黃鴨調試法有關。[3]不過一些用戶在看到這個小黃鴨形象時,以為是惡意軟件的結果,沒有意識到這是一個愚人節玩笑。[4]

參見

參考資料

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.