《調試九法》讀書筆記
阿新 • • 發佈:2018-04-04
相關 流程 內部 出錯 有客 道理 就是 初學 讀書筆記
《調試九法》讀書筆記
引發失敗
這是一個逆而行之的過程。想要成功,我們先引發失敗,而在摸清失敗的根源之後,創造出成功。這個道理是不難理解的。然而,我們怎麽引發失敗,尤其是引發對成功有益的失敗?
但如何才能讓他失敗呢?一種簡單的方法是進行一次內部預演,還有一種同樣有效的方法是掩飾給未來的投資者。如果碰巧沒有客戶或投資者在現場,那麽你就必須設法正常使用,並觀察它是如何出錯的。
我們往往需要遵循下面的流程,來將“引發失敗”這個過程變成一次有趣且成效慢慢的探索。
1.回到開始。從最初的源頭開始,而不是從某個看似無錯的中斷點開始,進行下一步的查錯。
2.模擬失敗發生的場景。每一個失敗都有其發生的原因,但當我們了解它之前,它是隱藏的。我們如果要到達這個失敗,就要通過各種途徑去趨近失敗。而模擬失敗發生的場景,就是一種首要的途徑去趨近失敗。
初學者往往會將“引發失敗”和“模擬失敗”混淆。書中講到很多例子去說明這個道理,而在此處,我對兩者的區別做一個總結。
引發失敗 通過模擬失敗發生的場景,在不知道失敗本身機理的情況下,讓失敗再次發生。
模擬失敗 通過某種人為的而非原程序本意的方式制造表觀相同的失敗。這往往是一種拙劣的模仿,為達到失敗而制造失敗,為實現失敗的表象去制造失敗,而不是去將失敗作為出發點,尋求程序中導致失敗的漏洞。
仔細觀察失敗
你必須能看到失敗。如果它不是每次發生,那麽就必須忽略掉不發生的時候,而在每次發生時觀察它。關鍵是在每次運行時捕捉相關的信息,以便在發生失敗之後查看這些數據。方法就是讓系統在運行的時候盡可能多地輸出信息,並把它們記錄到“調試日誌”中去。
《調試九法》讀書筆記