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

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

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

2種防御性編碼技術

 

實用程序設計建議,簡單但功能強大的技術,用于安全,可維護的軟件

我會簡短而甜美的

我們將介紹兩種非常簡單實用的防御技術,您可以立即將其應用于您的項目。

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

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

如果您以前從未聽說過防御性編碼,那么該差不多了。 這是要點。

防御性編碼使我們的軟件即使輸入錯誤也能以正確的方式運行。

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

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

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

它們是前提條件檢查。 這是一個非常簡單的示例,但仍然是一個真實的示例。

2種防御性編碼技術

> simple guard statement

 

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

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

2種防御性編碼技術

> refactored guard statement

 

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

方法內(nèi)的斷言

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

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

2種防御性編碼技術

> execution assertion

 

我們預計會出現(xiàn)錯誤。 在調(diào)用數(shù)據(jù)庫的Save()方法后添加anif,我們可以有效地斷言發(fā)生的事情并采取相應的措施。 沒什么好奇怪的

Nicklas Millard在丹麥的四大咨詢公司之一中擔任高級技術顧問。 他主要擔任客戶項目的首席開發(fā)人員和解決方案架構(gòu)師。

他一直在為商業(yè)客戶和政府機構(gòu)開發(fā)軟件,例如國防部,教育部,丹麥環(huán)境與食品部,國家警察,丹麥勞動力市場和招聘局以及Ø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)

分享到:
標簽:編碼 技術
用戶無頭像

網(wǎng)友整理

注冊時間:

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

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

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

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

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

答題星2018-06-03

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

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數(shù)有氧達人2018-06-03

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

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

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

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定