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

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

主站蜘蛛池模板: 久久一区二区精品 | 黄色免费观看网站 | 日本美女视频韩国视频网站免费 | 97麻豆精品国产自产在线观看 | 国产成人毛片视频不卡在线 | 一二三四视频社区在线播放中国 | 丁香六月欧美 | 97人人模人人爽视频一区二区 | 在线视频一区二区三区在线播放 | 99久久国产综合精品swag超清 | 久久国产美女免费观看精品 | 久久免费视频一区 | 国产自愉怕一区二区三区 | 不卡视频一区二区 | 午夜网站视频 | 久久精品亚洲一级毛片 | 天天爱综合 | 99精品久久秒播无毒不卡 | 国内精品久久久久久久999下 | 天天添天天干 | 久久pao| 91小视频版在线观看www | 日本精品免费 | 国产中的精品一区的 | 九九国产 | 成人欧美视频免费看黄黄 | 95在线观看精品视频 | 色综合天天综久久久噜噜噜久久〔 | 婷婷色视频 | 玖玖爱视频在线观看 | 亚洲国产精品久久婷婷 | 日韩在线一区二区三区视频 | 激情六月天婷婷 | 欧美中文小说在线观看 | 亚洲线精品久久一区二区三区 | 久久伊人色 | 好吊妞在线 | 五月婷婷影视 | 精品精品国产自在久久高清 | 中文字幕一区婷婷久久 | 免费a网址|