日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

你不就是加了 2 行代码,为什么要用 2 天?

發布時間:2024/9/15 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 你不就是加了 2 行代码,为什么要用 2 天? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

英文:Matt Lacey,

翻譯:程序員的那些事(id:iProgrammer)

“你只是加了 2 行代碼,為什么要用 2 天?”

這是一個看似合理的問題,但做了一些可怕的假設。

代碼行數 = 努力 代碼行數 = 價值; 所有代碼都有同等價值;

上述 3 個假設都有誤。

為什么 1 個看起來很簡單的修改,要花 2 ?天時間才能完成?

我們來分析一下原因:

1、因為提交這個問題報告的人,并沒有清晰描述如何重現問題。

我花了幾個小時才重現了。有些開發者會立即回到報告問題的人那里,要求他提供更多的信息,然后再進行調查。我試著用提供的信息做盡可能多的事情。我知道有些開發者不喜歡必須修復 bug,所以會不惜一切代價來“逃避”。聲稱沒有足夠的信息是一種“好方法”,看起來你是想幫忙,但不需要做任何事情。報告錯誤不是一件容易事,我很感謝所有提錯誤報告的人。在向他們詢問更多細節之前,我會盡量先從已提供的信息來開展工作。

2、因為報告的問題與 XX 功能有關,是我不熟悉的。

問題所涉及的功能,我很少用,也不是我曾仔細用過的。這就意味著我得花了更多的時間去理解這個功能,以及它是如何與整個軟件相互作用的。

3、因為我花了時間去調查問題的真正原因,而不僅是看表面癥狀。(治本,不止治標)

如果一些代碼拋出了錯誤,你可以直接用 try...catch 語句把它包起來,然后抑制錯誤。沒有錯誤,就沒有問題。對吧?抱歉,對我來說,讓問題隱形不等于解決問題。隱藏錯誤容易導致其他意想不到的隱患。我不希望在將來還得返工處理。

4、因為我調查了是否有其他方式可以引發同樣的問題,而不僅僅是重現報告的步驟。

重現步驟是很容易讓復現錯誤,而實際上可能是更深層次的錯誤原因。找到問題的確切原因,并查看所有引發問題的方法,更能提供有價值的見解。比如代碼實際是如何使用的,哪些地方可能有需要解決的問題,或者反映出代碼不一致,這意味著錯誤是在一個代碼路徑 A 中導致的(或處理的),而不是在路徑 B 中。

5、因為我花了時間來驗證代碼中是否有其他部分可能受到類似的影響。

如果一個錯誤導致了 Bug,那么代碼庫的其他地方發生也可能有同樣的錯誤。現在是檢查的好時機。

6、因為我發現問題原因后,我就開始尋找最簡單的方法來解決問題,同時將帶來副作用的風險降到最低。

我不想要最快速的修復方法。我想要一個未來不會造成混亂或其他問題的修復方法。

7、因為我做了更徹底的測試,并驗證了它解決了所有受影響的不同代碼路徑的問題。

我不想依靠別人來檢驗我所做的是正確的。我不希望在將來發現錯誤,不得不回到這段代碼。場景切換既代價昂貴又令人沮喪。我希望盡可能避免讓專職的測試人員再次查看“相同的”更改。

我不喜歡必須修復 bug。部分原因是 Bug 會讓人覺得是我之前的失敗造成的。另一個原因是我更愿意去研究新的東西。

還有什么比修 bug 更慘的呢?

就是反復修同一個 bug。

我花時間確保任何一次遇到的 bug 都能完全修復,這樣就不需要不止一次的面對、調查、修復和測試。

由于微信平臺算法改版,公號內容將不再以時間排序展示,如果大家想第一時間看到我們的推送,強烈建議星標我們和給我們多點點【在看】。星標具體步驟為:(1)點擊頁面最上方“小詹學Python”,進入公眾號主頁。 (2)點擊右上角的小點點,在彈出頁面點擊“設為星標”,就可以啦。 感謝支持,比心。

總結

以上是生活随笔為你收集整理的你不就是加了 2 行代码,为什么要用 2 天?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。