天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

Visual Studio 2010 中的代碼約定設(shè)置

  軟件約定稱為代碼約定,通過(guò)這一約定可以表示代碼正常工作所需的正式條件。 如果方法未按預(yù)期收到數(shù)據(jù)或生成的數(shù)據(jù)不符合預(yù)期的后置條件,代碼約定將導(dǎo)致代碼引發(fā)異常。 有關(guān)前置條件和后置條件的概述,您可能需要查看我上個(gè)月發(fā)表的文章 (msdn.microsoft.com/magazine/gg983479)。

  代碼約定是 .NET Framework 4 的一部分,但同樣依賴于 Visual Studio 2010 中的一些功能,例如運(yùn)行時(shí)工具、與 MSBuild 集成以及“項(xiàng)目屬性”框中的屬性頁(yè)。 值得注意的是,僅編寫前置條件和后置條件是不夠的。 您還需要為每個(gè)項(xiàng)目啟用運(yùn)行時(shí)檢查功能才能使用軟件約定。 您可以通過(guò) Visual Studio 2010 中的“代碼約定”項(xiàng)目屬性頁(yè)來(lái)完成上述操作。

  在本文中,我將討論您可以查看或選擇的各個(gè)選項(xiàng)的預(yù)定用途,并深入討論使用代碼約定中的參數(shù)驗(yàn)證可以執(zhí)行的最常見(jiàn)操作的重寫程序工具和實(shí)踐。

  代碼約定屬性頁(yè)

  應(yīng)在所有版本中還是僅在調(diào)試版本中實(shí)施代碼約定前置條件和后置條件? 實(shí)際上,這取決于您對(duì)軟件約定概念的理解。 它是設(shè)計(jì)工作的一部分嗎? 或者,它僅是一種調(diào)試措施?

  如果它是設(shè)計(jì)功能,則沒(méi)理由剝離發(fā)行版中的約定。 如果它僅是一種調(diào)試技術(shù),當(dāng)在發(fā)布模式中進(jìn)行編譯時(shí),您不希望顯示它。

  在 .NET Framework 中,代碼約定僅是此框架的一部分并且未融入任何語(yǔ)言。 這樣將更容易在項(xiàng)目中按版本配置它們。 因此,通過(guò)軟件約定的 .NET Framework 實(shí)現(xiàn),您可以決定實(shí)現(xiàn)約定的合適時(shí)間和地點(diǎn)。

  圖 1 顯示 Visual Studio 2010 中的屬性頁(yè),通過(guò)此頁(yè)可以設(shè)置軟件約定為應(yīng)用程序工作的方式。 請(qǐng)注意,此類設(shè)置基于項(xiàng)目應(yīng)用,因此可以根據(jù)需要進(jìn)行調(diào)整。

圖 1 Visual Studio 2010 中代碼約定的屬性頁(yè)

  您可以選擇選項(xiàng)配置(調(diào)試、發(fā)布等)并僅對(duì)該配置應(yīng)用設(shè)置。 這樣,您可以啟用代碼約定用于調(diào)試但不用于發(fā)布,而且更重要的是,您可以隨時(shí)改變決策。

  運(yùn)行時(shí)檢查

  若要啟用代碼約定,必須選中“執(zhí)行運(yùn)行時(shí)約定檢查”選項(xiàng)。 如果未選中此選項(xiàng),則在源代碼中顯示的任何約定說(shuō)明將可能不會(huì)產(chǎn)生任何效果(定義了 DEBUG 符號(hào)的任何版本中的 Contract.Assert 和 Contract.Assume 例外,但這不是很重要)。 復(fù)選框控制是否在每個(gè)編譯步驟結(jié)束時(shí)觸發(fā)重寫程序工具。 重寫程序是一個(gè)外部工具,用于對(duì)軟件約定進(jìn)行后處理并修改 MSIL 代碼,以及在合適的位置執(zhí)行前置條件、后置條件和固定條件檢查。

  但是,請(qǐng)注意,如果您具有類似下面這樣的前置條件,則在關(guān)閉重寫程序時(shí)會(huì)得到運(yùn)行時(shí)斷言失敗:

Contract.Requires<TException>(condition)        
        

NET技術(shù)Visual Studio 2010 中的代碼約定設(shè)置,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 99热久久这里只精品国产WWW | 全黄H全肉细节文短篇 | 午夜福利体验免费体验区 | WWW夜片内射视频在观看视频 | 亚洲一卡二卡三卡四卡2021麻豆 | 国产一区二区免费在线观看 | 中文人妻熟妇精品乱又伧 | 好大快用力深一点h视频 | 日本19xxxx撤尿| 国产人妻麻豆蜜桃色精 | 精品无码久久久久久久动漫 | 99久久99久久久精品久久 | 久草网国产自偷拍 | 亚洲精品无码葡京AV天堂 | 无遮18禁在线永久免费观看挡 | 日本高清无卡码一区二区久久 | 蜜桃麻豆WWW久久囤产精品免费 | 国产专区青青在线视频 | 美女被抽插到哭内射视频免费 | 最新果冻传媒在线观看免费版 | 亚洲AV久久久噜噜噜噜 | 亚洲午夜精品A片久久WWW解说 | 国产精品久久久久久搜索 | 巨大乳hdbbw| 色戒西瓜视频 | jlzzzjizzzjlzzz亚洲 | 蜜桃精品成人影片 | 日韩内射美女人妻一区二区三区 | 暖暖视频中国在线观看免费韩国 | 最近中文字幕mv手机免费高清 | 国产午夜小视频 | 日本中文字幕巨大的乳专区 | 在线观看成人3d动漫入口 | 熟女久久久久久久久久久 | 免费精品美女久久久久久久久久 | 国产亚洲精品久久无码98 | AV国产乱码一区二区三视频 | 亚洲免费无码中文在线亚洲在 | 色戒未删减版在线观看完整 | 欧美日韩精品一区二区三区四区 | 欧美97色伦综合网 |