eclipse 鲜为人知的调试技巧,你用过多少
?????????? 今天在OSChina上看到了篇調(diào)試技巧,的確對于調(diào)試非常有幫助,并且大部分我們都沒有用過,我們經(jīng)常使用的調(diào)試是F5678四個(gè)鍵,如果你還想提高調(diào)試效率你可以嘗試著用一用,寫過代碼做過項(xiàng)目的人都知道調(diào)試是一件讓人頭疼的事情,有時(shí)候一個(gè)小的問題也會(huì)浪費(fèi)你很長的時(shí)間,如果你不想再調(diào)試上面話費(fèi)過多的時(shí)間,可以用最短的時(shí)間找出問題的原因來,可以從調(diào)試技巧入手,靈活掌握調(diào)試技巧的人也會(huì)大大提高開發(fā)速度和效率。
?????????? 就像生活中出了各種各種的問題需要及時(shí)解決,不同的事情找到不同的解決方式,找到問題的關(guān)鍵所在,可以說一個(gè)會(huì)調(diào)試的人也是一個(gè)會(huì)生活的人,他(她)知道怎么樣去調(diào)節(jié)生活,讓生活恰意。
?????????? 簡單試了試一下這幾種方式調(diào)試,還是很好用的平時(shí)大家可以再調(diào)試過程中注意多使用,熟能生巧,只要使用多了也會(huì)熟練了。
?????????? 邏輯結(jié)構(gòu)
?????????? 這個(gè)調(diào)試主要用在有邏輯結(jié)構(gòu)的一些變量里面,比如map、數(shù)組、集合等等,我做的這個(gè)項(xiàng)目中從前臺到后臺全是傳的map,從后臺取出的數(shù)據(jù)也全是map都是結(jié)構(gòu)化數(shù)據(jù),所以,應(yīng)用這個(gè)調(diào)試很直觀,下面兩張圖是在費(fèi)邏輯視圖和邏輯視圖中的對比:
???????????? 在沒有使用邏輯視圖時(shí),map中的數(shù)據(jù)是鍵值對的方式排序的如果一多了之后會(huì)看著不舒服,想找到你想看的數(shù)據(jù)就需要一點(diǎn)一點(diǎn)的王后找很碼放,再來看一下邏輯視圖
???????????? 邏輯視圖可以不僅僅給出了一堆數(shù)據(jù),也給出了key/value的方式,清晰一些。
??????????? 條件Debug
??????????? 條件調(diào)試也就是斷點(diǎn)處寫一個(gè)條件,如果條件為真在斷點(diǎn)處就會(huì)停止,否則會(huì)跳過斷點(diǎn),結(jié)合調(diào)試?yán)訙y試一下:
???????????????? 下面是我給了一個(gè)條件是:newid? == 24 , 在第一個(gè)邏輯視圖中,可以看到id值等于24,說明條件為真,程序會(huì)在這里停止。需要注意的是各種類型,newid是整形變量如果是一個(gè)字符串比較就會(huì)出錯(cuò),在寫條件的時(shí)候注意類型否則會(huì)提示錯(cuò)誤。
??????????? 異常斷點(diǎn)
??????????? 我們調(diào)試的目的是什么?是為了找出并解決程序中出現(xiàn)的錯(cuò)誤,軟件工程中說的是解決發(fā)現(xiàn)或者未發(fā)現(xiàn)的錯(cuò)誤,異常斷點(diǎn)是在出現(xiàn)異常的地方停止,也不用你去找出現(xiàn)了什么異常,它自己會(huì)遇到異常停止在異常處中斷,此處你自己要設(shè)置異常的類型,即遇到什么異常停止,我設(shè)置了一個(gè)除數(shù)為0的異常,將在除數(shù)為0出暫停,如下
????????????? expression和display窗口
???????????? 這兩個(gè)窗口我們都不會(huì)陌生有點(diǎn)類似于VB里面的立即窗口,在窗口里面輸入表達(dá)式可以出現(xiàn)結(jié)構(gòu)。下圖為display窗口,取得map中值
???????????? 下面為expression,結(jié)果是一樣的
???????????????? 這些調(diào)試技巧我試了試都挺好用的,為必要的調(diào)試增加了些效率,調(diào)試也是隨著代碼的復(fù)雜度慢慢變的精細(xì),首先,需要粗粒度的調(diào)試猜測問題的大概范圍然后再將范圍縮小,逐步趨縮小、越來越小時(shí)就會(huì)用到上面這些很細(xì)微的調(diào)試技巧,有些可能開始用著反而會(huì)多花謝時(shí)間,這也是挺正常的需要反復(fù)在調(diào)試中去熟悉和鍛煉才能形成一種應(yīng)用意識。
??????????????? 逐漸形成利用這些的意識在以后不用想或者考慮你就會(huì)這么去做、這么去應(yīng)用,熟記于心,很多意識的養(yǎng)成也會(huì)在反復(fù)提醒和做的過程中形成,比如安全意識、吃飯意識等等,例如剛剛下過雨,當(dāng)你在路邊走時(shí)旁邊有車從你身邊經(jīng)過,賤到你身上一些水,下次再遇到這種情況,即使沒有車你也會(huì)在路里面走,現(xiàn)在我也愛在路里面走,一種意識。
轉(zhuǎn)載于:https://www.cnblogs.com/lilongsheng1125/p/4978524.html
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的eclipse 鲜为人知的调试技巧,你用过多少的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 调用webservice查询手机号码归属
- 下一篇: Effect of Switchover