99精品久久这里只有精品,三上悠亚免费一区二区在线,91精品福利一区二区,爱a久久片,无国产精品白浆免费视,中文字幕欧美一区,爽妇网国产精品,国产一级做a爱免费观看,午夜一级在线,国产精品偷伦视频免费手机播放

    <del id="eyo20"><dfn id="eyo20"></dfn></del>
  • <small id="eyo20"><abbr id="eyo20"></abbr></small>
      <strike id="eyo20"><samp id="eyo20"></samp></strike>
    • 首頁 > 文章中心 > 正文

      計算機程序開發(fā)思考

      前言:本站為你精心整理了計算機程序開發(fā)思考范文,希望能為你的創(chuàng)作提供參考價值,我們的客服老師可以幫助你提供個性化的參考范文,歡迎咨詢。

      計算機程序開發(fā)思考

      異常的工作原理,在有問題的地方產生異常,馬上停止當前的工作,轉向異常處理代碼,如果找不到異常處理代碼,就會見異常向一層匯報,上一層接到異常會做同樣的事,轉向異常處理代碼,或者再將異常向上匯報,這樣逐層間錯誤傳遞出去,直到有一層處理了異?;蚴且恢眻蟾娼o程序的使用者——用戶。這個層就是調用棧,當用戶A運行程序B,B從函數C開始執(zhí)行,調用函數D,再調用函數E,再調用函數F,這時F出現(xiàn)了異常,那么這個異常的調用棧就是A(棧底)—〉B—〉C—〉D—〉E—〉F(棧頂),這個異常就會沿著這個棧從棧頂開始向棧底的方向報告,如果在函數C中有對這個異常的處理代碼,那么這個異常的報告鏈就是F—〉E—〉D—〉C。可以看出,如果在完整的調用棧中沒有處理這個異常的代碼,用戶A就成了異常報告的終點,向windows界面系統(tǒng),會彈出一個惱人的消息對話框哈。

      那么用戶A向誰報告呢,哈哈,這個已經不屬于程序的范圍了,感覺用會對程序而言好像上帝一樣,訴說痛苦已經讓上帝都聽到了,就心滿意足了哈哈,看來程序真虔誠哈哈。對于異常這個特性,也可以比喻成下屬向上級報告問題,如果下屬知情不報,問題就嚴重了,你要是領導知道下屬是這樣的八成就踢了他,相反如果你有一個報告機制健全的下屬隊伍,哈哈你就威風了。日本企業(yè)文蛤中有個宗旨——聯(lián)絡,商談,報告,其實就是想讓員工都具有向上級匯報的習慣?,F(xiàn)在再看看程序,哈哈,你不用給她們灌輸什么企業(yè)文化,不用她們講述什么報告的重要性,她們本身就是忠實報告的,如果把程序員比作企業(yè)老總,那么程序就是訓練一隊有素的員工。

      怎樣處理異常。在這里有個原則就是“永遠不要去處理你不知道怎么處理的異常”,

      也就是只處理你知道如何處理的異常,對那些你不知道的異常必須廣開言路,并積極地向上級匯報。什么叫知道如何處理呢?先說一下處理異常有哪些方式,大體有,彈出提示消息框(這個消息框不同于那個惱人的異常報告消息框,她是捕獲異常后,根據處理的具體環(huán)境程序員主動編寫的友好的提示消息框),記錄錯誤日志,吞掉,做善后工作等等,那么出現(xiàn)異常時就要站在出現(xiàn)異常的模塊的立場上考慮一下我應該選擇哪種處理方式呢?如果不能做出選擇就選擇不處理,即向上級報告。

      舉個例子,函數Fun1是創(chuàng)建并返回一個活動的數據連接對象的方法,他接受一個數據庫連接字符串,如果調用者(上級)給他一個錯誤的連接字符串,這時Fun1創(chuàng)建不了連接對象,產生了一個創(chuàng)建不了連接對象的異常,那么這時他應該怎樣處理這個異常呢?彈出友好的消息框?說什么友好,F(xiàn)un1根本就不知道是什么原因使他接收到了錯誤的連接字符串,彈一個“連接字符串有誤”,用戶肯定都有殺你的心,這個提示和用戶的業(yè)務邏輯有嘛關系!記錄錯誤日志,這個還行,但是記錄下來的文字無非就是“連接字符串有誤,連接字符串是:SQL……”,好點的話,從連接字符串中看出了問題,一般情況下還得根據代碼上下文去找問題原因。這個方式不是不行是不好。吞掉,哈哈開什么玩笑,你既創(chuàng)建不了連接,又不吱一聲,想讓調用者瘋了呀,這個肯定不行。做善后工作,行,確實應該清理一下現(xiàn)場,免得浪費資源,但是還是沒吱一聲,所以這個方式做的不徹底。沒招了,哈,其實上面的分析給我們指明了一條路,幫助我們祛除了錯誤的選擇,這條路就是向上匯報,或是不加任何出來代碼,或是記錄日志,做些善后,再重新將異常拋出。

      那么什么時候就知道怎樣處理異常了,這就得看實際的情況和用戶的要求了,這句話等于沒說,就像其他的標題醒目但給出的結論卻模棱兩可文章一樣,哈哈,這里可以給幾個建議,

      1,一般地,底層模塊或是方法中不要處理異常,

      2,編寫公共模塊、DLL等是,不能采用彈出對話框等依賴于平臺,框架的方式處理異常,

      3,編寫公共模塊、DLL等時,必須在使用文檔中注明每個方法屬性可能拋出的異常。

      4,永遠不要寫try這樣的語句。

      {}catch(Exception){onothing}自定義異常。明白了異常的原理和機制后,就可以自己定義異常了,這樣的實踐往往在編寫控件、公共模塊、DLL等的時候,用錯誤編號在網上搜索一下,能找出一大堆關于錯誤代碼的描述。其中大多數是M(icro)S(oft)制定的,MS從操作系統(tǒng)到各種各樣的框架都有對各種異常的編號,對每種異常做出了詳細的定義,如果你還用過像Spread等商業(yè)控件,也可以看到他里邊的各種各樣的異常定義,也就是說我們自己也可以定義異常,在必要的時候,這樣就可以讓自己寫的模塊也加入到訓練有素的員工隊伍中了。至于如何定義異常,具體的編成語言有具體的做法,比如C#中指定一異常一個從Exception繼承來的類,VB中異常是個全局變量等等,參見感興趣語言的語法指南就可以了。

      對異常的重新認識,一直以來許多人都認為異常是非??膳碌?,可惡的,她是錯誤的化身,她有惱人的彈出對話框,弄得用戶跟兇煞惡神似的哈哈,其實這些都是誤解,異常一直默默地忠實的報告著程序中出現(xiàn)的嚴重的不可回避的問題,她為了程序、系統(tǒng)的正確性、嚴謹性呼喚你,希望你重視這些問題,希望你用智慧解決這些問題,她是多么的可愛,又是多么的高尚,從來沒有因為對她的誤解而放棄自己的使命……異常很重要,我們更好學會如何去使用她。

      就去吻亚洲精品欧美日韩在线| 级毛片无码av| 少妇被爽到自拍高潮在线观看| 18级成人毛片免费观看| 伊人色综合视频一区二区三区| 亚洲一区中文字幕在线电影网| 国产婷婷丁香久久综合| 99热精品国产三级在线观看| 国产成年无码久久久久下载| 久久精品中文字幕免费| 国内偷拍精品一区二区| 中文字幕一区二区综合| 嫩草伊人久久精品少妇av| 69一区二三区好的精华| 久久99精品久久久久久hb无码| 国产精品高潮无码毛片| 手机色在线| 久久AⅤ无码精品色午麻豆| 日韩人妻av不卡一区二区三区 | 日本一区二区不卡精品| 中文字幕有码无码人妻av蜜桃| 狠狠色综合7777久夜色撩人| 欧美丰满熟妇乱xxxxx图片| 国产精品厕所| 亚洲一区二区三区偷拍女厕| 制服无码在线第一页| 久久波多野结衣av| 中文字幕亚洲精品一二三区| 国产一级一区二区三区在线播放| 国产综合精品一区二区三区| 亚洲码国产精品高潮在线| 久久国产精品-国产精品| 国产精美视频| 日本成熟妇人高潮aⅴ| 国产精品午夜高潮呻吟久久av| 一本久道视频无线视频试看| 精品国产av一区二区三区| 亚洲乱码中文字幕在线| 国产爆乳无码一区二区麻豆| 欧美日韩国产成人高清视频| 日本亚洲国产一区二区三区|