日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線(xiàn)咨詢(xún)客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

2種防御性編碼技術(shù)

 

實(shí)用程序設(shè)計(jì)建議,簡(jiǎn)單但功能強(qiáng)大的技術(shù),用于安全,可維護(hù)的軟件

我會(huì)簡(jiǎn)短而甜美的

我們將介紹兩種非常簡(jiǎn)單實(shí)用的防御技術(shù),您可以立即將其應(yīng)用于您的項(xiàng)目。

作為專(zhuān)業(yè)的開(kāi)發(fā)人員,您很可能已經(jīng)在應(yīng)用這些技術(shù),因此您可能想把這一技術(shù)排除在外。

但是,對(duì)于尚未達(dá)到專(zhuān)業(yè)水平的任何人,這些技術(shù)都會(huì)提高您的質(zhì)量并使您的代碼更安全。

如果您以前從未聽(tīng)說(shuō)過(guò)防御性編碼,那么該差不多了。 這是要點(diǎn)。

防御性編碼使我們的軟件即使輸入錯(cuò)誤也能以正確的方式運(yùn)行。

好的,讓我們研究一下即使您輸入了錯(cuò)誤的軟件,也可以如何使其表現(xiàn)良好。

警衛(wèi)條款-檢查前提條件

這些單線(xiàn)是防御性編碼的絕對(duì)基石之一。 它們位于方法的頂部,以確保僅在提供有效輸入時(shí)方法才繼續(xù)執(zhí)行。

它們是前提條件檢查。 這是一個(gè)非常簡(jiǎn)單的示例,但仍然是一個(gè)真實(shí)的示例。

2種防御性編碼技術(shù)

> simple guard statement

 

我們只是在檢查呼叫者是否向我們提供了非空值或空值。 如果繼續(xù)使用這些值可能會(huì)導(dǎo)致意外的結(jié)果,通常我們會(huì)這樣做。

當(dāng)您的方法開(kāi)始使用大量參數(shù)或一個(gè)參數(shù)需要多個(gè)保護(hù)子句時(shí),您需要重構(gòu)為另一種保護(hù)子句方法。 這種重構(gòu)可能涉及創(chuàng)建一個(gè)包含所有所需屬性的對(duì)象以及IsValid()方法。 在這里,IsValid()方法正在檢查其狀態(tài),以驗(yàn)證每個(gè)屬性是否都具有有效值。

2種防御性編碼技術(shù)

> refactored guard statement

 

當(dāng)您發(fā)現(xiàn)自己在多個(gè)方法中重復(fù)相同的保護(hù)子句時(shí),此重構(gòu)技術(shù)特別有用。 例如,規(guī)范對(duì)象使您可以在一處捕獲業(yè)務(wù)規(guī)則。

方法內(nèi)的斷言

您對(duì)斷言非常熟悉。 這些語(yǔ)句在單元測(cè)試結(jié)束時(shí)。 在防御性編碼中,它們不僅限于測(cè)試。

您可能會(huì)調(diào)用其他類(lèi)方法,甚至調(diào)用外部庫(kù)提供的方法。 在這種情況下,我們想在繼續(xù)執(zhí)行方法之前檢查一下關(guān)于這些方法執(zhí)行或返回的假設(shè)是否正確。

2種防御性編碼技術(shù)

> execution assertion

 

我們預(yù)計(jì)會(huì)出現(xiàn)錯(cuò)誤。 在調(diào)用數(shù)據(jù)庫(kù)的Save()方法后添加anif,我們可以有效地?cái)嘌园l(fā)生的事情并采取相應(yīng)的措施。 沒(méi)什么好奇怪的

Nicklas Millard在丹麥的四大咨詢(xún)公司之一中擔(dān)任高級(jí)技術(shù)顧問(wèn)。 他主要擔(dān)任客戶(hù)項(xiàng)目的首席開(kāi)發(fā)人員和解決方案架構(gòu)師。

他一直在為商業(yè)客戶(hù)和政府機(jī)構(gòu)開(kāi)發(fā)軟件,例如國(guó)防部,教育部,丹麥環(huán)境與食品部,國(guó)家警察,丹麥勞動(dòng)力市場(chǎng)和招聘局以及Ørsted。

在LinkedIn上連接

(本文翻譯自Nicklas Millard的文章《2 Defensive Coding Techniques You Should Use Today》,參考:https://medium.com/swlh/2-defensive-coding-techniques-you-should-use-today-4225cacc1c29)

分享到:
標(biāo)簽:編碼 技術(shù)
用戶(hù)無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定