錯誤處理技術
返回中立值:
處理錯誤的最佳做法就是繼續執行操作並簡單的返回一個沒有危害的數值。
換用下一個正確的數據:
在處理數據流的時候,有時只需返回一個正確的數據即可。
返回與前次相同的數據:
數據改變較小的數據。
使用最接近的合法值:
比如倒車時,速度不會顯示爲負,而是顯示爲0。
把警告信息保存到日誌文件中
返回一個錯誤碼:
重點是決定哪些地方應該直接處理,哪些地方返回錯誤碼,給出報告。如果安全性很重要,要確認調用方的子程序總會檢查返回的錯誤碼。
1:設置狀態變量的值
2:返回狀態變量的值
3:拋出一個異常
調用用來處理錯誤的子程序或對象:
把錯誤處理都集中到一段子程序或者對象中,代價是需要讓所有開發者均需要採用這一子程序,並且發生了耦合。
用最恰當的方式在局部處理錯誤:
關閉程序:
適用於與人身安全攸關的程序。
異常
在恰當的抽象層次拋出異常
當決定把一個異常傳給調用方時,請確保子程序的抽象層次與異常的抽象層次相同。避免代碼耦合,破壞封裝性。
把項目中對異常的使用標準化
可以建立項目的特定異常類,它可用作所有可能拋出的異常的基類,這樣就可以把日誌記錄報告出來,並標準化。
考慮異常的替換方案
僅僅因爲編程語言提供了異常處理機制而使用異常,是典型的“爲用而用”,這也是典型的“在一種語言上去編程”,而不是“深入一種語言去編程”。
在異常信息中加入有關異常的全部信息,避免使用空的catch語句。
瞭解使用的函數庫所拋出的異常。