999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

容錯機(jī)制在軟件開發(fā)中的應(yīng)用

2021-12-17 01:46:42宗漢文果金
科技信息·學(xué)術(shù)版 2021年1期
關(guān)鍵詞:程序機(jī)制效率

宗漢文 果金

隨著信息產(chǎn)業(yè)化的到來,越來越多的企業(yè)和個人參與到了軟件開發(fā)中來,隨著開發(fā)的不斷升級,控件的使用和美化程度也越來越高。但程序的愈發(fā)復(fù)雜多樣,隨之而來的是系統(tǒng)的效率和系統(tǒng)的容錯能力的下降,往往由于不重視系統(tǒng)容錯,不重視垃圾回收,會導(dǎo)致在項目中出現(xiàn)很多意想不到的問題,經(jīng)常導(dǎo)致客戶體驗不好,系統(tǒng)意外崩潰的情況出現(xiàn),可見軟件的容錯機(jī)制在系統(tǒng)中發(fā)揮著很重要的作用。

本人從事過很多項目的開發(fā),曾經(jīng)使用過VB語言,C++語言和C#語言,現(xiàn)如今C#語言的應(yīng)用范圍現(xiàn)在越來越寬廣,但是其效率和對于跨平臺方面的硬傷也為人詬病。我本人在經(jīng)歷的幾個C#項目中,總結(jié)了一些程序容錯方面的心得,故本文是針對C#語言的相關(guān)容錯機(jī)制進(jìn)行簡要的論述和比較。希望讀者能在其中獲得自己想要的東西。

(1)C#容錯機(jī)制一:TRY-CATCH語句。

TRY-CATCH語句。確切的說是TRY-CATCH-FINALLY。不僅是在C#中,在JAVA,C++(最新版)中均有涉及,其語句的邏輯關(guān)系為:

Try

{

A;

}

Catch

{

B;

}

Finally

{

C;

}

熟悉C#語言的同學(xué)應(yīng)該都知道,程序的執(zhí)行順序應(yīng)為先進(jìn)入Try執(zhí)行A,在執(zhí)行A遇到錯誤時執(zhí)行Catch內(nèi)的B,最后執(zhí)行Finally里的C。這就是C#代碼中比較基本的一個容錯機(jī)制。當(dāng)循環(huán)執(zhí)行某些程序時,可能會遇到由于數(shù)據(jù)的異常或者內(nèi)存的溢出導(dǎo)致的問題,當(dāng)不使用try-catch語句時,會導(dǎo)致系統(tǒng)的崩潰而退出,但是這不是我們想要的結(jié)果。所以在循環(huán)中使用try-catch后,系統(tǒng)將錯誤信息捕獲,但不影響下一條數(shù)據(jù)繼續(xù)執(zhí)行,循環(huán)將繼續(xù)進(jìn)行。在catch代碼中可以將錯誤發(fā)生的時間,發(fā)生的位置,發(fā)生的原因記錄下來,以為后期進(jìn)行修改。而Finally中的代碼是永遠(yuǎn)執(zhí)行的。

當(dāng)然TRY-CATCH也有缺點或者說是弱點,如果大量的使用,會造成系統(tǒng)的效率下降,速度變慢。大量的使用TRY-CATCH語句會使得程序占用大量的虛擬內(nèi)存,所以適當(dāng)?shù)氖褂肨RY-CATCH語句不僅會提升你的代碼容錯率,也會增加客戶好感度。

(2)C#容錯機(jī)制二:合理的軟件事務(wù)。

事務(wù)處理不僅是C#語言,其他語言也涉及事務(wù)處理。現(xiàn)在系統(tǒng)多采用的是多核CPU的服務(wù)器提升了處理器和計算機(jī)系統(tǒng)的性能。事務(wù)處理的增多也是為了減少由于程序開發(fā)中的多表操作而造成的信息丟失或者程序死鎖的問題。

事務(wù)處理的實質(zhì)就是將多條SQL語句封裝,并用Begin開頭,End結(jié)尾,進(jìn)行統(tǒng)一執(zhí)行,當(dāng)其中一條發(fā)生錯誤時,則事務(wù)回滾,之前的語句結(jié)果不提交。

由于現(xiàn)在的軟件系統(tǒng)越發(fā)復(fù)雜,越來越多的軟件系統(tǒng)涉及了多表操作,事務(wù)處理愈發(fā)重要,但是當(dāng)使用事務(wù)處理時,效率也是要考量的一個重要因素,不當(dāng)?shù)氖聞?wù)處理會導(dǎo)致數(shù)據(jù)內(nèi)存被大量的占用而造成系統(tǒng)繁忙的出現(xiàn)。所以在處理事務(wù)尤其是大規(guī)模事務(wù)時,SQL語句的編寫也是非常重要,處理事務(wù)時SQL語句盡量采用參數(shù)化編寫方式,這樣會減少數(shù)據(jù)庫對SQL語句的解析時間,降低系統(tǒng)崩潰的概率。

(3)C#容錯機(jī)制三:適度的垃圾回收。

系統(tǒng)又卡住了,怎么辦?

這是C#的WINFORM工程師經(jīng)常遇到的問題,尤其在用戶和界面以及數(shù)據(jù)庫進(jìn)行頻繁的數(shù)據(jù)交互的時候。但是C#語言本身就有垃圾回收機(jī)制啊,為什么還會那么慢呢?這時候往往的處理方式是增加GC,進(jìn)行手動的垃圾回收。這樣做開始可能會起到一些效果,但是當(dāng)使用的時間長了,WINFORM系統(tǒng)仍然會逐漸的變慢。這是什么原因呢?

這是我們的程序使用了很多C#的回收程序,出發(fā)點是好的,但這樣反而導(dǎo)致系統(tǒng)經(jīng)常性的崩潰,在仔細(xì)的走查代碼過后,發(fā)現(xiàn)是由于垃圾回收程序使用過多,導(dǎo)致垃圾回收反而超過了程序所占用的內(nèi)存,才導(dǎo)致的崩潰現(xiàn)象出現(xiàn)。所以在后期的修改后,將垃圾回收統(tǒng)一到一處,變成根據(jù)時間和內(nèi)存占用程度智能回收內(nèi)存垃圾,系統(tǒng)就逐漸正常了。其根本的思路是讓系統(tǒng)使用內(nèi)存,而不是讓回收機(jī)制占用內(nèi)存,在系統(tǒng)使用內(nèi)存達(dá)到一定的量,或者達(dá)到一定的時間時,在進(jìn)行內(nèi)存的釋放,會起到意想不到的效果。

(4)C#容錯機(jī)制四:成熟的軟件復(fù)用。

軟件復(fù)用是在應(yīng)用系統(tǒng)開發(fā)中利用已有的開發(fā)成果,消除了包括分析、設(shè)計、編碼、測試等在內(nèi)的許多重復(fù)勞動,從而提高了軟件開發(fā)的效率;同時,通過復(fù)用高質(zhì)量的已有開發(fā)成果,避免了重新開發(fā)可能引入的錯誤,從而提高了軟件的質(zhì)量。

C#中主要采用引用DLL文件的方法做引用,實現(xiàn)成型的代碼復(fù)用。同一開發(fā)團(tuán)隊的開發(fā)過程中,也可以利用同事寫好的底層代碼來提升自己的編寫效率。

復(fù)用看似是一種減少代碼量,提高寫作效率的方式,其實也是極大的避免了代碼錯誤。如果系統(tǒng)中大量的采用封裝的成型代碼,會使得系統(tǒng)的編寫過程快捷靈活。并且這些特定的代碼由特定人進(jìn)行編寫,更分工明確清楚。極大的提升了系統(tǒng)的健壯性。使得后期維護(hù)和管理更加的方便,快捷,能迅速的反應(yīng),并定位到人。

以上四點就是本人經(jīng)過大量的項目試驗和總結(jié),對于C#或者說軟件容錯機(jī)制的理解,可能很多理解還有不到位的地方,那就需要更多的經(jīng)驗的積累和提高,未來隨著C#的開源之路的進(jìn)行,.NET平臺也會走上跨平臺的道路,未來會有想LINUX、安卓、IOS等其他的系統(tǒng)平臺使用.NET平臺,其相關(guān)的容錯機(jī)制會變化的越來越多,但是其核心內(nèi)容仍然是使編程語言效率提升。未來的編程語言也將向著更加簡單化,封裝化,低耦合化的方向迅速的發(fā)展。

猜你喜歡
程序機(jī)制效率
提升朗讀教學(xué)效率的幾點思考
甘肅教育(2020年14期)2020-09-11 07:57:42
試論我國未決羈押程序的立法完善
自制力是一種很好的篩選機(jī)制
文苑(2018年21期)2018-11-09 01:23:06
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
破除舊機(jī)制要分步推進(jìn)
跟蹤導(dǎo)練(一)2
注重機(jī)制的相互配合
“錢”、“事”脫節(jié)效率低
主站蜘蛛池模板: 久久免费成人| 91啪在线| 亚洲精品另类| 广东一级毛片| 97久久免费视频| 亚洲女同一区二区| 熟妇丰满人妻| 无码人妻免费| av大片在线无码免费| 欧美亚洲一二三区| 亚洲a级在线观看| 99re在线观看视频| m男亚洲一区中文字幕| 国产亚洲成AⅤ人片在线观看| 91国内视频在线观看| 色综合久久久久8天国| 日韩在线播放中文字幕| 婷婷99视频精品全部在线观看| 成人精品视频一区二区在线| 日韩天堂视频| 国产精品冒白浆免费视频| 伊人色综合久久天天| 亚洲系列无码专区偷窥无码| 99成人在线观看| 国产成人精品免费av| 成人国产免费| 露脸真实国语乱在线观看| 熟妇丰满人妻av无码区| 99草精品视频| 久久久无码人妻精品无码| 日韩在线第三页| 天天激情综合| 天天综合色网| 国产天天色| 亚洲国产AV无码综合原创| 伊人久综合| 国产主播喷水| 视频在线观看一区二区| 亚洲香蕉伊综合在人在线| 欧美日韩国产在线人成app| 欧美日韩高清在线| 四虎免费视频网站| 国产国语一级毛片在线视频| 久久动漫精品| 伊人久久久大香线蕉综合直播| 日韩大片免费观看视频播放| 国产精品九九视频| 日本亚洲国产一区二区三区| 国产无码精品在线| 欧美区国产区| 亚洲国产精品国自产拍A| 性色生活片在线观看| 国产精品久久自在自线观看| 国产97视频在线观看| 国产精品免费露脸视频| 久久精品国产免费观看频道| 国产三级国产精品国产普男人| 国产凹凸一区在线观看视频| 日韩无码视频播放| 99人体免费视频| 亚洲免费福利视频| 国产亚洲一区二区三区在线| 国产簧片免费在线播放| 99视频精品全国免费品| 亚洲中文精品人人永久免费| 九九线精品视频在线观看| 人妻无码AⅤ中文字| 色网站在线视频| 欧洲成人在线观看| 久久综合久久鬼| 无码AV动漫| 狠狠干综合| h网址在线观看| 国产原创第一页在线观看| 夜夜操狠狠操| 免费亚洲成人| 日韩av无码精品专区| 亚洲综合九九| 国产最爽的乱婬视频国语对白| JIZZ亚洲国产| 欧美日韩va| 国产日韩欧美中文|