標籤:

調試進行不下去,你需要的只是你女兒的一個小玩具

身為程序員的你,有沒有見到過下面的場景?

花了一下午(或一天)在試圖解決某個Bug,但是似乎問題很複雜,總是沒有思路。

有個同事正好路過,看到你愁眉苦臉的,問你「怎麼了呀?」

「噢,是這樣的。我遇到了一個問題,點擊這個控制項的時……」 當你正準備和同事詳細解釋的時候,突然靈光一現,你話都沒說完,就中斷了和同事的傾訴,繼續幹活了。

同事微微一笑,又走開了。他並沒有怪你。

相信大家都有類似的經歷。遇到 Bug/問題被卡住了,拉個人過來,和他 blablabla 講了一通,很多時候中途你就找到了解決辦法。

有時候,並不一定要和人傾訴,還可以像其他東西傾訴,強迫自己把遇到的問題,詳細地解釋出來(一定要說出來)。其實呢。這種方法,有一個術語:小黃鴨調試法(Rubber Duck Debugging)。

維基百科有解釋:小黃鴨調試法是軟體工程中使用的調試代碼方法之一。就是在程序的調試、糾錯或測試過程中,耐心地向小黃鴨解釋每一行程序的作用,以此來激發靈感。

名稱由來

此概念是參照於一個故事。故事中程序大師隨身攜帶一隻小黃鴨,在調試代碼的時候會在桌上放上這隻小黃鴨,然後詳細地向鴨子解釋每行代碼。(引自維基百科)

有的朋友問我,什麼樣的小黃鴨呢?

好吧。如果你有孩子,有一位女兒或是兒子,你一定知道那是什麼樣的。什麼,你是單身狗。好吧,給你上個圖!

話說,只有小黃鴨么?小狗熊可以不,甚至小獅子可以不?可以可以!只要你開心,就都可以。那麼問題來了,你喜歡用什麼?

我是IT老司機米洛,十年軟體開發工程師,覺得文章有用,請點轉載,贈人玫瑰,手有餘香。
推薦閱讀:

《微服務設計》閱讀筆記(二)演化式架構師
《微服務設計》閱讀筆記(一)微服務
輕鬆理解UML用例圖時序圖類圖的教程
畫畫一樣開發軟體 中文版開發工具的配置及開發準備
老王啊,你不管管你們家數據了?(技術周刊 2018-03-09)

TAG:軟體開發 |