天天看點

當你無法發現問題所在時,不要簡單地把代碼或者資料還原

【場景】

這幾天有一位同僚需要做與我一樣的功能,而這個功能是我已經開發好了的,他隻需直接把我的代碼拿去修改就可以。結果,我的代碼可以正常運作,他的代碼在開啟服務之後,控制台就不斷有日志輸出,開發環境進入了當機狀态。

他花了很長的時間去尋找問題的來源,但一直沒有找到。之後,他跟我描述了他的問題。我提議幫他看看,然而得到他的回答是,他已經将代碼還原到上一個版本了。也就是說,他放棄了尋找問題的來源。換成另一種比較文藝的描述,他放棄了學習進步的機會。

作為同僚,同時又是同一開發組的戰友,我不能看着他這麼堕落。我直言不諱地跟他說,在開發中遇到問題時,不能逃避,必須面對,必須解決,因為你不面對不解決,同一的問題以另外一種方式出現在你面前。現在,你有足夠的時間去慢慢琢磨問題所在,而到了正式開發的階段,留給你解決問題的時間不會太多。到那時,你就隻能通過加班的方式争取更多的時間來解決問題。

果不其然,沒過多久,他又要開發類似功能的功能。而結果又跟之前的一樣,又是大量日志輸出,又是開發環境當機。比之前好的一點是,他聽進去了我上次的建議,沒有逃避問題。在尋找問題的解決辦法未果之後,他讓我與他一起找問題的根源。

結局很美好,我們找到了問題的根源所在,同時也對對象的建立有了新的認識。而對對象建立的有新的認識,就是我們這次解決問題得到的收獲。

【場景分析】

程式的問題與其他問題不一樣的地方在于,程式的問題就像一個坑,你不去處理它,它就一直在那裡,它并不會随着時間的推移而消失。而長時間不去解決的程式問題又像蟻穴,正所謂千裡之堤毀于蟻穴,開發程式有幾年經驗的應該有深刻的體會。

總結起來,程式員對于問題的态度隻有一個,勇敢面對。

繼續閱讀