一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

為類提供軟件約定

  根據一種很好的舊軟件開發做法,應在每個方法的頂部(即實現任何重要行為之前)放置一個條件語句作為屏障。 每個條件語句都檢查輸入值必須驗證的不同條件。 如果條件未通過驗證,代碼會引發異常。 這種模式通常稱為 If-Then-Throw。

  但是,有了 If-Then-Throw,我們就可以編寫出高效正確的代碼嗎? 是不是在所有情況下,這都足夠了?

  If-Then-Throw 不是在所有情況下都能解決所有問題,這不是什么新觀點。 根據約定設計 (DbC) 是 Bertrand Meyer 幾年前提出的方法,這種方法基于這樣一種想法,即每個軟件都擁有一個正式描述其輸入和輸出的約定。 If-Then-Throw 模式幾乎涵蓋了約定的第一部分,但它完全不涉及第二部分。 任何主流編程語言都不是天然支持 DbC 的。 不過,通過現有的一些框架,您可以嘗試在常用語言(如 Java、Perl、Ruby、JavaScript 語言,當然還有 Microsoft .NET Framework 語言)中采用 DbC 方法。 在 .NET 中,可以通過 .NET Framework 4 中增加的代碼約定庫實現 DbC,該代碼約定庫位于 mscorlib 程序集中。 請注意,該庫可用于 Silverlight 4 應用程序,不能用于 Windows Phone 應用程序。

  我相信幾乎每個開發人員都原則上同意,約定優先開發方法是一種極好的開發方法。 不過我認為,在 .NET 4 應用程序中積極使用代碼約定的人并不多,因為 Microsoft 已提供了軟件約定并將其集成在 Visual Studio 中。本文著重介紹約定優先方法在代碼維護和簡化開發方面的優勢。 在開發下一個項目時,您可以借鑒本文觀點向領導推薦代碼約定。 以后,我將在本專欄中對某些方面深入探討,如配置、運行時工具和編程功能(如繼承)。

  有關簡單 Calculator 類的推論

  代碼約定關乎心態;您不應等到必須設計需要超級體系結構并采用很多前沿技術的大型應用程序時才想起使用代碼約定。 請注意,如果管理不善,再強大的技術也可能帶來問題。 只要熟練掌握代碼約定,代碼約定就適用于幾乎任何類型的應用程序。 我們從一個簡單的類開始,一個經典的 Calculator 類,如下所示:

public class Calculator
{
public Int32 Sum(Int32 x, Int32 y)
{
return x + y;
}

public Int32 Divide(Int32 x, Int32 y)
{
return x / y;
}
}
    

NET技術為類提供軟件約定,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 制服丝袜怡红院 | bt7086新片速递亚洲最新合集 | 四虎精品影视 | 亚洲成人免费网址 | 亚洲一区二区三区视频 | 美女性视频网站 | 亚洲成人手机在线观看 | 99热成人精品国产免男男 | 99精品视频在线观看re | 久久线看观看精品香蕉国产 | 精品在线免费视频 | 91国内精品久久久久免费影院 | a高清免费毛片久久 | 久久亚洲日本不卡一区二区 | 国产一二三区在线观看 | 国产免费精彩视频 | 色老板免费观看 | 亚洲欧美精品 | 国产成人www | 日韩亚洲欧美综合一区二区三区 | 国产一区二区三区怡红院 | 四虎在线精品免费高清在线 | 国产在线播放一区 | 久久精品99无色码中文字幕 | 亚洲婷婷综合色高清在线 | 婷婷激情综合五月天 | 久久久久中文字幕 | 91看片淫黄大片在看 | 91国内揄拍·国内精品对白 | 国产成+人+亚洲+欧美+日韩 | 一区二区美女视频 | 国产精品久久久久久一区二区 | 涩视频成人永久免费观看网站 | 亚洲人成亚洲精品 | 亚洲第一在线 | 国产精品综合一区二区 | 亚洲五月婷| 久久成人亚洲香蕉草草 | 色老板免费观看在线播放 | 免费毛片在线视频 | 一本伊人 |