軟件工程之調試

從我們剛剛開始學習計算機編程就已經開始了更調成打交道,軟工視頻上說沒有錯是絕對不可能,只是我們檢查的方法不對,所以調試也是我們計算機編程的一項重要工作,以前的挑錯我們都是一行一行代碼一步一步慢慢調,雖然也可以,但是一旦程序變大了,我們那種辦法就變得相形見絀了,根據這兩天我看的軟件工程的視頻,今天我們講講在專業角度的程序調試。以便於我們以後更加系統更快的完成挑錯。

調試的原則:

1.確定錯誤的性質。

2.確定錯誤的位置。

3.在出現錯誤的地方很可能還有別的錯誤。

4.當修正一個錯誤的時候可能會引入新的錯誤。

 調試的步驟:

1.從錯誤的外部表現形式入手,確定程序中出錯的位置.

2.研究有關部分的程序,找出錯誤的內在原因。

3.修改設計和代碼,以排除這個錯誤。

4.重複進行暴露了這個錯誤的原始測試或某些有關測試。


上面說了一下調試的一些中心思想,下面我們來介紹幾種調試的具體方法。

強行排錯

這種調試方法也就是我們常用的調試辦法,目前使用的比較多,但是效率低。它不需要過多的思考,比較省腦筋,但是太慢,別的辦法不能快速的找到錯的時候我就需要用這種辦法。

回溯法調試

這是在小程序中常用的一種有效的調試方法,一旦發現錯誤人們先分析錯誤的徵兆,確定最先發現症狀的位置。也就從出錯的地點往回找,慢慢分析從原點出發。這同樣也是一個需要思考的過程。它常用於小型程序中來定位錯誤。它是沿着程序的邏輯結構回溯不正確的結果,直到找出程序邏輯錯誤的位置,即:從程序產生不正確結果的地方開始,從該處觀察到的結果推斷出程序變量應該是些什麼值。所以使用這個過程,可以確定程序中從狀態符合預期的位置點,到第一個狀態不符合預期值的位置點之間的範圍。 

歸納法調試,是一個需要思考的過程。歸納,是一種特殊的思考過程,可以從細節轉到全局,

即:收集出錯的信息,列出數據,包括輸入,輸出,歸納整理,發現規律,從線索除法,尋找線索之間的聯繫。也就

意味着:從特殊到一般。歸納調試的步驟可以概括爲以下一個圖,在此就不再詳敘。


what 列出一般現象

where 說明發生現象的地點

when 列出現象發生是所有已知情況

how 說明現象的範圍和量級

這也是比較著名的3w1h形式。歸納發的關鍵是提出假設,證明假設,能解釋說明正確,不能就說明有問題。、

演繹法調試

演繹法是一種從一般原理或前提出發,經過排除和精化得過程來推到出的結論的思考方法。下面用一張圖給大家看一下。

希望大家在看完我這篇博客後,以後再調試的時候可以規範化調試。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章