大牛的除錯程式心得體會

2021-07-16 16:01:28 字數 2017 閱讀 6281

許多程式設計師都有這樣的經歷:無論自己編寫什麼很短很短的程式,一般是很難一次就能通過編譯的;通過編譯的其功能還不一定是正確的。我在很早就注意這樣現象了,開始的時候,我還不信這個邪,還試著編寫程式看看自己能否一次能否編譯成功,為這個事還和別人打過賭呢!這當然是年輕時做過的事了。後來我漸漸明白了,程式設計出錯是程式設計的乙個重要的部分!出錯是正常的,不出錯才是不正常的。出錯怎麼辦?當然是改錯啦!不知道錯在什麼地方怎麼辦?當然是除錯啦!除錯於是和程式設計相依相伴了。程式設計師不但要會編寫程式,還要會除錯程式。

程式出錯一般有:未定義、語法、執行出錯三個方面。

未定義

未定義往往是程式設計師的忽略定義或定義後名稱與定義不一致造成的。

語法問題

執行問題

定義、語法這些都是顯式出錯,相對好解決。但是執行中出現錯誤就五花八門了,我試著歸納一下:

出錯是必然的,如何找出錯誤,有些人編寫c語言的人只會用在可能出錯的語言前後,通過顯示語句print來判別出錯的原因。他們不懂debug、 sdb、 dbx等除錯工具,來除錯程式,他們會編不會調。我們很難想象不會除錯的程式設計師是如何程式設計的,除錯對於程式設計師如此重要,以致於可導致出「不會除錯的程式設計師就不是程式設計師」的結論。

現在的開發語言具有功能豐富的除錯命令。無論用什麼設計語言除錯,你只要注意掌握以下幾個命令或操作,就能入門除錯了:

執行程式

設定斷點、取消斷點

執行到斷點

單步跟蹤(setp into)

單步執行(step over)

顯示變數、物件、源程式

退出除錯

你可以按此去尋找相應的命令和操作,並熟記於心中!此法必有大用。

通過除錯,程式設計師可以學會如何運用斷點、如何最快地找到可疑語句,如何很迅速地找到問題所在從而改進程式。而不斷地除錯,使得程式設計師不停進行除錯操作,變成了操作高手。除錯內容可以說千變萬化,技巧也多多,關鍵看程式設計師的積累。例如,迴圈語句除錯的技巧、同步非同步除錯的技巧、中斷除錯技巧、外設除錯技巧、資料庫除錯技巧、邊界除錯技巧、例外除錯技巧、遮蔽法除錯技巧、替代法除錯技巧、介面除錯技巧等等。

除錯象開車一樣,不會開的時候,程式設計師有恐懼感,會開了以後,程式設計師特別想調,開多了,程式設計師越發老練,除錯操作越來越快、對問題發生的原因和糾正方法也熟記於心中,技巧也油然而生,積累越來越多。

好的程式設計師不但除錯自己的程式,而且會幫助其他程式設計師解決調不出來的程式的問題。程式設計師在幫助別人的時候,更能盡顯除錯才華,成為真正的除錯高手。

除錯總的目標是為了糾正程式的錯誤。但是,除錯也可用於其他的用途。例如,我經常會先把函式的呼叫語句給寫好,但是不寫函式體,這樣每次編譯都會出現函式沒有發現的提示。我不寫函式體的目的,就是讓每次編譯的時候提示我還有多少函式沒有編寫。讓我對這個函式加深印象,給我有時間思考這個函式如何編寫。當其他語句編寫完後,我再乙個乙個把沒有編寫的函式內容補上,這個時候編寫就快的多了。有的時候,我還喜歡看到幾十條上百條的出錯提示,然後,我感覺於乙個改錯就能消滅幾十個錯誤的快感之中,然後再改再調,直到無錯。除錯成了我娛樂程式設計的一部分。

通過除錯你也會發現:程式設計水平直接影響到除錯。如果程式很具有模組性,除錯起來就很快,幾個或十幾個單步執行就會到達程式的任何地方,如果程式本身邏輯性不強,變數命名不準確、乙個函式內語句有數十條數百條,那你幾百個單步執行都到達不了你想要達到的地方,程式除錯起來就會很麻煩,而且不容易定位出錯的地方。所以除錯高手往往會改進自己的程式設計,使得程式設計水平日益提高,成為程式設計高手。

除錯的心得體會

2014年3月5日 4g的裝置出現的散點問題調了三天了,都還沒有什麼頭緒,今天還是把王老師請了來,讓她親自出馬,而我就在一旁看著。看她調了一段時間,慢慢把問題定位出來,感覺我這三天就像玩過去的一樣,受益匪淺。現在稍作總結吧。1,要找到懷疑的點,將其實例化為某一變數,然後以這個找乙個參照量與此變數形成...

PHP PDO 心得體會

關於pdo 我想可以不用做過多的描述,寫一寫最近的使用心得體會 首先 關於如何使用pdo 連線到資料庫 dbms mysql 使用的資料庫 host localhost 選擇的主機 dbname test 選擇的資料庫 user root 登陸的使用者名稱 password 使用者密碼 dsn dm...

銷售心得體會

銷售思維的培養 1.裝可憐讓客戶動惻隱之心是一種方法但是不適合男人 2.身處高位的銷售領導往往擁有給客戶的折扣和動用資源的優勢,不要當綠葉,要按兵不動尋找時機 3.市場上的大客戶與哪家合作就會成為標桿事件,哪家公司就會成為一線公司。4.站在客戶的角度,在業務上給予中肯的意見,得到客戶的感謝和認可。5...