• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    極限編程XP活用原則

    發布: 2008-5-26 10:41 | 作者: 不詳 | 來源: IBM developerWorks中國網站 | 查看: 178次 | 進入軟件測試論壇討論

    領測軟件測試網

      先找出共通點,然后實現共通點,并把不確定的信息設計為擴展,這就是推遲決策的設計思路。但是,應該指出的是,上面這個例子的設計,仍然有很多的限制,例如,增加的需求(也就是某個ConcreteDecorator)中可能擁有新的接口,例如需要一個AnotherOperate方法,這時候,原先的擴展性設計就又變得難以滿足需要了。在軟件設計中,針對接口設計的靈活性和擴展性雖然比以往的設計增強的許多,但它并不是萬能的,而且取決于設計師對需求的理解能力和設計水平。此外,推遲設計決策要求我們學習抽象的思維,識別和區分軟件中變化和不變的部分。

    注重接口,而不是注重實現

      Martin Fowler把軟件設計分為三個層面:概念(conceptual)層面、規約(Specification)層面、實現(Implementation)層面。軟件的設計應該盡可能地站在概念、規約層面上進行,而不是過分關注實現層面。之所以有時候我們發現在迭代的過程中,軟件難以承受這種變化,那么,很大的可能是規約層面和實現層面出了問題。我們在前面一節討論重構和審查的時候說,消除重復代碼是一項復雜的工作,針對規約設計就是其中最有效,但也是最難的一種方法。

      我們可以把規約層面想象為軟件的接口或是抽象類,或是具體類的公有方法,而把實現層面想象為實現類、實現細節。那么,我們的原則應該盡可能設計穩定的規約層面,并為客戶(可能是真正的客戶,大部分情況下是使用你的代碼的客戶程序員)提供一個優秀的、簡單的界面(接口)。社會發展到現在的水平,任何一個人都不會花費過多的時間來研究你的代碼,如果你的代碼不能夠為他人提供便利性,那么最后被淘汰的一定就是你的代碼。Java語言的成功,很大程度上就在于他在保證其強大功能的同時,還提供了一個簡單、易用、清晰的規約界面。

      在軟件設計中,重視規約層面的設計是很普遍的。為什么我們提倡三層架構的軟件設計?最重要的是因為他為軟件結構合理性貢獻巨大,遠遠超過了他的其它價值。在現代的軟件設計中,數據庫、界面、業務建模其實是三種差異較大的技術,這就導致了三者的變化度是不同的。根據區分不同變化度的原則,我們知道,必須對三種技術進行區分。而這正是三層架構的主要思路。從這個思路擴展出去,我們還可以根據變化度的需要,將三層架構演變為四層架構、甚至多層架構。而多個層次之間,正是通過優秀的規約界面來達到最松散的耦合的。

      在精益編程中,為了避免浪費,要求每位程序員提高代碼的規約層面的穩定性是非常有必要的。一個系統中,設計優良的規約界面能夠擁有比較好的抗變化能力,能夠較好的適應迭代過程。

    回歸

      版本2的軟件出現了版本1中不存在的行為,稱為回歸;貧w是軟件開發中的主要問題。在對現有功能修改的同時影響原有的行為,這是造成bug的主要原因。在迭代的過程中,必須避免回歸行為的出現。而避免回歸問題的主要解決方法是構建自動化的測試,實現回歸測試。

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>