<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    MDA/MDD/TDD/DDD/DDDDDDD
    posts - 536, comments - 111, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    契約式設(shè)計Design by Contract

    Posted on 2009-09-03 23:42 leekiang 閱讀(638) 評論(1)  編輯  收藏 所屬分類: 架構(gòu)設(shè)計
    契約式設(shè)計的本意很簡單,就是在設(shè)計和編碼階段向面向?qū)ο蟪绦蛑屑尤霐嘌裕╝ssertion)。而所謂斷言,實際就是必須為真的假設(shè),只有這些假設(shè)為 真,程序才可能做到正確無誤。契約式設(shè)計的主要斷言包括先驗條件(precondition)、后驗條件(postcondition)以及不變式 (invariant):
    ● 先驗條件針對方法(method)1,它規(guī)定了在調(diào)用該方法之前必須為真的條件。
    ● 后驗條件也是針對方法,它規(guī)定了方法順利執(zhí)行完畢之后必須為真的條件。
    ● 不變式針對整個類,它規(guī)定了該類任何實例調(diào)用任何方法時都必須為真的條件。
    斷言應(yīng)使用某種編程語言寫在代碼里(而不是僅僅通過文檔加以聲明),只有這樣:
    1)對于程序員而言,它們才有意義,同時能夠提供優(yōu)質(zhì)的.有用的文檔.
    2)能夠在運行時對它們進行檢測,更好地支持測試和調(diào)試工作.

    charon的建議。如果你對斷言/防錯程序不怎么熟悉,而且也搞不到那本"編程精粹"。買《Design by Contract by Example》這本書看看。如果已經(jīng)熟悉了,到書店看個半小時到一小時就夠了(例子只要挑個一個看,多了也沒用),權(quán)當擴充知識面了。使用的話,就當斷言了,設(shè)立若干前置條件后置條件就夠了,這樣足以有效提高對程序的置信度;什么不動點,F(xiàn)rame Rules,那是理論上的東西,吃力不討好,有閑工夫的才時候可以用用(得到的效果和付出的努力不成比例)。

    我的總結(jié):開始看了名字以為是按約定進行設(shè)計的意思,后來大概看了看,了解了一點點,但決定不再在上面花時間了,測試驅(qū)動開發(fā)明顯要更為成熟和實用。

    評論

    # re: 契約式設(shè)計Design by Contract[未登錄]  回復  更多評論   

    2009-09-16 10:33 by alex
    謝謝你提供的各種網(wǎng)站鏈接信息。呵呵!
    主站蜘蛛池模板: 妞干网免费视频在线观看| 永久在线免费观看| 日本免费高清一本视频| 永久免费AV无码网站在线观看| 日韩特黄特色大片免费视频| 亚洲人成无码网WWW| 亚洲精品乱码久久久久久中文字幕 | 污视频网站在线观看免费| 亚洲精品一区二区三区四区乱码| 免费无遮挡无码永久在线观看视频| 亚洲网站免费观看| a级毛片免费观看视频| 一级特黄录像视频免费| 国产成人精品日本亚洲语音| 亚洲an日韩专区在线| 亚洲黄色三级网站| 亚洲人成网址在线观看| 久久被窝电影亚洲爽爽爽| 亚洲一区AV无码少妇电影☆| 亚洲天堂中文字幕在线| 4338×亚洲全国最大色成网站| 免费一区二区视频| 又爽又黄无遮挡高清免费视频 | 亚洲成a人片在线网站| 亚洲国产成人久久综合碰碰动漫3d | 国产成人精品日本亚洲直接| 亚洲高清无在码在线电影不卡| 久久久久亚洲Av片无码v | 四虎在线最新永久免费| 2019中文字幕在线电影免费| 99免费观看视频| a拍拍男女免费看全片| 在线观看av永久免费| 最新中文字幕免费视频| 一本无码人妻在中文字幕免费| 日本视频一区在线观看免费| 老司机在线免费视频| 亚洲性线免费观看视频成熟| 成人免费777777| 高清在线亚洲精品国产二区| 亚洲国产婷婷综合在线精品 |