第6章 程序調(diào)試與部署-bkj_第1頁
第6章 程序調(diào)試與部署-bkj_第2頁
第6章 程序調(diào)試與部署-bkj_第3頁
第6章 程序調(diào)試與部署-bkj_第4頁
第6章 程序調(diào)試與部署-bkj_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第6章程序調(diào)試與部署2011.01.226.1程序編輯環(huán)境設(shè)置6.1.1設(shè)計器視圖與代碼視圖6.1.2顯示代碼中的行號6.1.4設(shè)置代碼字體與顏色6.2程序中的錯誤Bug就是程序中暗含的錯誤或問題,它們的存在會導(dǎo)致程序運行失敗或不正常地運行,甚至導(dǎo)致整個系統(tǒng)崩潰。為了防止錯誤的發(fā)生,必須要求保持良好的編程風(fēng)格。少用或者不用那些可能使程序發(fā)生混亂的語句。更重要的是在編程時,要能夠很好地把握程序運行的每一個細(xì)節(jié)。當(dāng)程序發(fā)生錯誤時,能夠根據(jù)程序的流程逐步推敲找到錯誤。而不是一旦發(fā)現(xiàn)程序運行可能存在問題,就盲目地在已經(jīng)完成的代碼上進(jìn)行修改。這樣只會給你的程序帶來更多的錯誤,讓項目陷入無窮的危機(jī)。6.2.1語法錯誤語法錯誤是一種程序編寫中出現(xiàn)了違反VisualBasic.NET語法規(guī)則的錯誤,它會影響編譯器完成工作。它也是最簡單的錯誤,幾乎所有的語法錯誤都能被編譯器或解釋器發(fā)現(xiàn)。在VisualStudio2008集成開發(fā)環(huán)境中遇到語法錯誤時,比如變量沒有定義、參數(shù)類型不匹配、控件對象未添加、缺少元素、關(guān)鍵詞錄入錯誤等,都可以通過其智能感知功能,在編譯程序之前及時地發(fā)現(xiàn)程序中的語法錯誤,并用波浪線標(biāo)示出來,同時錯誤消息還將同時顯示在“錯誤列表”窗口中。這些消息將告訴錯誤的具體位置(行、列、文件),并給出錯誤的簡要說明,如圖6-5所示。6.2.1語法錯誤6.2.2語義錯誤程序源代碼的語法正確而語義或意思與程序設(shè)計人員的本意不同時,就是語義錯誤。此類錯誤比較難以察覺,他通常在程序運行過程中出現(xiàn)。比如說,溢出錯誤、下標(biāo)越界錯誤,未將對象引用設(shè)置到對象的實例中等。當(dāng)程序中出現(xiàn)這種錯誤時,程序會自動中斷,并給出可能的錯誤類型。6.2.2語義錯誤例如,讓程序運行下面的代碼:Dima(5)AsInteger'定義一個長度為6的整數(shù)數(shù)組,其范圍是a(0)到a(5)a(6)=10'將10賦給實際并不存在的數(shù)組元素a(6)msgbox(a(6).ToString)'輸出數(shù)組元素a(6)中的數(shù)運行這段程序,將會出現(xiàn)索引超出數(shù)組界限的錯誤,如圖6-6所示。比如說,溢出錯誤、下標(biāo)越界錯誤,未將對象引用設(shè)置到對象的實例中等。當(dāng)程序中出現(xiàn)這種錯誤時,程序會自動中斷,并給出可能的錯誤類型。6.2.3邏輯錯誤在編程的時候,有時候會出現(xiàn)這樣一種情況:明明程序編譯的時候沒發(fā)現(xiàn)任何錯誤。每個語句都符合語法規(guī)則,程序也能正常地進(jìn)入退出。可是它就是不能完成想要實現(xiàn)的結(jié)果。在這種情況下,多半就是程序中出現(xiàn)了邏輯錯誤。邏輯錯誤可以說是編程中最難解決的錯誤之一,因為它在外觀上并沒有表征。只有當(dāng)自己對運行的結(jié)果有十分清楚的了解,才能發(fā)現(xiàn)并糾正邏輯錯誤。在糾正邏輯錯誤的時候,更要求對程序運行數(shù)據(jù)和算法有深刻的了解,因此在編程之前的準(zhǔn)備工作也是十分重要的。調(diào)試注意事項仔細(xì)瀏覽程序,首先避免發(fā)生明顯的錯誤。發(fā)生錯誤的時候,常常會在程序報錯的地方查找錯誤??墒怯幸稽c要注意,有時候報錯的地方并不是錯誤的源頭。正確的方法應(yīng)在報錯的上下文統(tǒng)籌來查看,從而發(fā)現(xiàn)錯誤的源頭,進(jìn)而修改它。判斷程序發(fā)生邏輯錯誤,往往是根據(jù)輸出的結(jié)果不合常識。在調(diào)試程序的時候,要合理安排測試的數(shù)據(jù),以驗證程序的正確性。有時候運行程序,程序中發(fā)生了錯誤并且給出了提示,可并不一定就明白錯在什么地方。此時要做的就是跟蹤程序的運行,了解每一個變量當(dāng)前的運行值,弄清楚錯誤產(chǎn)生的真正原因,從而糾正程序中的錯誤。6.3程序的調(diào)試6.3.1設(shè)置啟動窗體6.3程序的調(diào)試6.3.2設(shè)置斷點6.3程序的調(diào)試6.3.3添加監(jiān)視6.3程序的調(diào)試6.3.4逐語句執(zhí)行6.4錯誤捕獲和處理異常類型描述Exception所有異常類的基礎(chǔ)類SystemException在運行時產(chǎn)生異常的基礎(chǔ)類ArgumentException變量異常的基礎(chǔ)類ArgumentNullException變量值為空的異常(而此時不應(yīng)為空)ArgumentOutOfGangeException變量越界異常IndexOutOfRangeException數(shù)組下標(biāo)越界異常InvalidOperaException非法調(diào)用對象的方法時產(chǎn)生的類NullReferenceException引用未分配內(nèi)存的對象時的異常InteropException與公共語言運行環(huán)境(CLK)外進(jìn)行數(shù)據(jù)交換而產(chǎn)生的異常ExternalException在運行庫的外部環(huán)境中發(fā)生或針對這類環(huán)境的異常的基類ComException與Com有關(guān)的異常的類SEHException結(jié)構(gòu)包含異常句柄的類6.5Windows應(yīng)用程序的部署6.5.1創(chuàng)建部署項目6.5Windows應(yīng)用程序的部署6.5.2將

應(yīng)用程序添加到安裝程序中6.5Windows應(yīng)用程序的部署6.5.7部署到其他計算機(jī)6.5Windows應(yīng)用程序的部署也可以直接通過生成“安裝向?qū)А钡姆椒▉砩砂惭b文件。即執(zhí)行“文件”|“添加”|“新建項目”菜單命令。在“添加新項目”對話框中,打開“項目類型”窗格中的“其他項目類型”文件夾,單擊“安裝和部署項目”,再單擊“模板”窗格中的“安裝向?qū)А?。然后按照向?qū)?zhí)行即可。測試安裝程序安裝后,可以按以下步驟進(jìn)行檢測。(1)驗證快捷方式是否安裝到了桌面上以及是否能夠正確啟動Calculator應(yīng)用程序。(2)使用控制面板中的“添加/刪除程序”卸載該

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論