什麼是您通常花費在調試高級與低級錯誤上的時間比例?調試:高級與低級錯誤
爲了討論的目的,高級別的錯誤是不正確的算法,對輸入數據和/或操作環境的錯誤假設,在初始實現某些事物時被忽略的情況,忘記處理邊界條件/邊緣案例等。爲了討論的緣故,它們還可以包括糟糕的設計決定,這些決定會在代碼中引入限制,並且不太容易改變,儘管這是擴展了錯誤的定義。換句話說,高級別的錯誤是由於不是你應該具有的含義而導致的錯誤。
低級錯誤是類似於內存管理和損壞問題,不是由高級錯誤引起的空指針取消引用,通過編譯器的細微語法錯誤,在執行某些操作時出現錯誤的錯誤數組等。換句話說,它們是由於沒有編碼你的意思而造成的錯誤。
另外,爲了比較,您主要使用哪種語言以及您主要使用哪種類型的編程?
我的道歉。但這可能會很快關閉「主觀和議論」 –
@Ravi - Nah。不是爭辯。 –
您的低級別和高級別錯誤的示例看起來與我相矛盾。例如,你提到一個未處理的邊界案例是一個高級錯誤,但是它們都是一個空指針異常和一個循環中的偏移錯誤,因爲它們是低級錯誤。我認爲這三者都是算法的邊緣情況,通常在規範中沒有具體提及,或者你稱之爲高級錯誤。通常都是由於開發人員未能正確測試而導致的。 – gooli