一区二区久久-一区二区三区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技術為類提供軟件約定,轉載需保留來源!

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

主站蜘蛛池模板: 加勒比日本在线 | 亚色在线 | 亚洲六月丁香六月婷婷蜜芽 | 色五月在线视频 | 欧美一区二区三区激情啪啪 | 免费在线国产视频 | 自啪| 欧美黄色大片免费观看 | 韩国一大片a毛片 | 丁香六月在线观看 | 美女一级免费毛片 | 久久中文字幕久久久久 | 精品午夜久久福利大片免费 | 欧美成人三级 | 人成精品视频三区二区一区 | 国内精品1区1区3区4区 | 亚洲精品国产自在久久老牛 | 欧美激情图片小说 | 91狠狠操| 色综合天天综合高清网国产 | 视频在线观看一区二区三区 | 国产精品视频免费播放 | 亚洲日本1区2区3区二区 | 伊人亚洲综合网 | www.黄网| 亚洲六月丁香六月婷婷蜜芽 | 国产美女久久久 | 在线视频一区二区三区在线播放 | 4hu永久影院在线四虎 | 情se五月天 | 亚洲六月丁香六月婷婷色伊人 | 精品国产夜色在线 | 美女色黄 | 久久精品国产精品亚洲红杏 | 亚洲国产欧美国产第一区二区三区 | 精品无码久久久久久国产 | 欧美视频久久久 | 色女人综合网 | 成年人免费在线视频网站 | 人人干人| 国产精品视频公开费视频 |