小黄鸭调试法,每个程序员都要知道的
花了一下午(或一天)在試圖解決某個 Bug,后來才知道解決方案很簡單,當(dāng)時就是沒有想到。
有個同事正好路過,看到你愁眉苦臉的,問你“怎么了呀?”
“噢,是這樣的。我遇到了一個問題,點擊這個控件的時……” 當(dāng)你正準(zhǔn)備和同事詳細(xì)解釋的時候,突然靈光一現(xiàn),你話都沒說完,就中斷了和同事的傾訴,繼續(xù)干活了。
同事微微一笑,又走開了。他并沒有怪你。
相信大家都有類似的經(jīng)歷。遇到 Bug/問題被卡住了,拉個人過來,和他 blablabla 講了一通,很多時候中途你就找到了解決辦法。有時候,并不一定要和人傾訴,還可以像其他東西傾訴,強(qiáng)迫自己把遇到的問題,詳細(xì)地解釋出來(一定要說出來)。其實呢。這種方法,有一個術(shù)語:小黃鴨調(diào)試法(Rubber Duck Debugging)。
維基百科有解釋:小黃鴨調(diào)試法是軟件工程中使用的調(diào)試代碼方法之一。就是在程序的調(diào)試、糾錯或測試過程中,耐心地向小黃鴨解釋每一行程序的作用,以此來激發(fā)靈感。
名稱由來
此概念是參照于一個故事。故事中程序大師隨身攜帶一只小黃鴨,在調(diào)試代碼的時候會在桌上放上這只小黃鴨,然后詳細(xì)地向鴨子解釋每行代碼。(引自維基百科)
(大家可以看下圖。鴨子真不少呢。)
演化
這種方法流傳開后,很多程序員效仿,開始拿其他玩具,比如手辦。喜歡二次元的,還會拿初音哈。或者是其他公仔呀。如下圖。
下面是「程序員的那些事」主頁君給大家找的一些國外網(wǎng)友分享的圖
遇到問題時,如果您的工作臺上也有傾聽的玩具或小東西,不妨拍個照,發(fā)給主頁君哦。(追加補(bǔ)充:當(dāng)天晚上,就有朋友給我發(fā)了照片,是大白。)
對了,主頁君經(jīng)常被同事拉過去當(dāng)“小黃鴨”。哈哈哈哈哈。如果你也遇到問題,推薦大家試試這個方法。:)
這篇文章首發(fā)于「程序員的那些事」微信,微信號:iProgrammer
總結(jié)
以上是生活随笔為你收集整理的小黄鸭调试法,每个程序员都要知道的的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: windows 新版skia编译 版本号
- 下一篇: 对抗生成网络(GAN)详解