程序員如何掌握Bug生產之術?
時至今日,筆者已有十余年的寫Bug經驗,是時候與各位看官分享一下,怎么才能寫出Bug的心得了。

從某種意義上講,寫出Bug其實是一件并不光榮和光彩的事情,但是寫出一個影響巨大/潛伏性極強的Bug,然后再通宵達旦地去排查、去修復她,在你行云流水般的bugfix代碼下,還能收獲到領導/同事/測試妹紙的一波666,你會發現,寫出這個Bug其實是一件很偉大、值得炫耀的事情。
總的來說,要寫出Bug,可以從以下幾個維度去思考:
1.測試是對自己代碼的不信任
程序員的天敵就是測試妹紙,為了能寫出更多的Bug,我們往往需要減少測試的數量,筆者也準備了一些話術用于應付測試妹紙:
- 這個功能很簡單,不會有Bug的
- 這個功能是臨時用的,不會有用戶使用的
- 放心吧,我寫的代碼保準沒有Bug
2.信任他人的實現,有現成的絕不自己動手
作為單純的對這個world只想說一句hello的程序員來說,我們需要對這個世界充滿信任,當遇到一個新的功能時,首先打開百度搜一下,看看別人的實現,如果有現成的,絕不浪費時間去檢查別人的代碼,如果別人的代碼有問題,哪來的勇氣發文章呢?
我們需要信任第三方庫,信任測試測過的代碼,信任用戶足夠聰明一定會按照我們的要求來傳遞數據。
3.所有代碼穿上try-catch外衣,拒絕暴露
Bug是令人十分討厭的,針對Bug我們有很完美的操作可以避免:
那就是在編碼的過程中多使用catch Exception{ignore();},通過這樣簡單的處理后,所有的接口都能完美運行,客戶也不會看到天書般的Bug日志,說不定通過這個操作,就像學生時做的數學題呢,也許過程錯了,但是結果是對的呀。
4.配置個性化的開發環境

開發環境永遠永遠不要與生產環境保持一致,因為生產環境一般是Linux系統,Linux系統實在是無趣,沒有彈窗廣告,沒有微信,沒有QQ,只有黑色與白色。
只有windows/macos這樣的操作系統才適合用來當我們的開發環境,因為他們可以配置不同的主題,可以安裝好看的字體。如果碰上測試給你報了一個疑似Bug的時候,你可以通知她到你這里來看一下,可以自豪地說:"我這里是好的,是你操作的問題"
當你熟讀本文,掌握Bug生產之術后,你只需勤于加班,定能掌握Bug生產之術。