極限程式設計(XP)的重構與設計模式

2021-08-22 01:20:51 字數 595 閱讀 4849

在剛剛開始將自己的**轉化成軟體的時候,我們都缺乏經驗。**臃腫、bug百出、難以維護、難以擴充套件。隨著時間的流逝,我們成為了更好的軟體設計者。我們從自己的錯誤中學習,能夠編寫出更加靈活的軟體。我們學會從使用者的角度考慮問題,將軟體做的更加完善、堅固;我們學會從設計中抽象出來一些物件,學會寫注釋和相關文件,使得軟體有更好的可維護性;設計軟體時,我們學會考慮當前和將來的需求,這樣我們可以從容的處理一些變更。我們學會了考慮更多的問題。我們在成熟。然而極端程式設計告訴我們,我們經常對軟體過分的設計了,我們經常花了大量的不必要的時間在早期的設計上。

模式和極端程式設計(xp),都為軟體開發提供了很大的幫助。但是到目前為止,xp大量的關注於重構,而從來都不去提模式。

在xp中,最重要的概念之一是重構。利用重構,可以完全不去考慮冗餘的設計和需求,可以盡量減小**的尺寸,增加開發的速度。xp說,「做可能起作用的最簡單的事」。在實際開發中,為了讓軟體更加靈活,很多設計者選擇使用大量的設計模式,目的之一就是避免日後進行重構,這和xp中的理念是矛盾的。

事實上設計模式和xp的重構並不衝突。xp更適合於中小型專案的快速開發,使用重構可以很好的達到這個目的。但是如果需求會經常的變更,那為什麼不用設計模式呢?在極限程式設計中引入設計模式,xp可能會更加成功。

DDD領域驅動設計 極限程式設計XP

xp是一種輕量 敏捷 高效 低風險 柔性 可 科學而且充滿樂趣的軟體開發方式。在以前的開發過程中,很多規則已經難於遵循,很多流程複雜而難於理解,很多專案中文件的製作過程正在失去控制。人們試圖提出更全面更好的一攬子方案,或者寄希望於更複雜的 功能更強大的輔助開發工具 casetools 但總是不能成功...

極限程式設計 XP 基本原則與規範

1.坐在一起 sitting together 盡可能讓團隊成員坐在一起,kent block在一次芝加哥的某個瀕臨困境的專案中發現,雖然這個團隊都是由程式 精英組成,但是卻陷入困境,後來他發現,這些成員都坐在距離彼此遙遠的小格仔中,他每次去找他們都要走很多路,這走得太多了,浪費了很多時間,甚至由於...

敏捷開發 重構與設計模式

最近,同事 朋友跟我聊天的過程中,提到了設計模式方方面面的問題。隨著物件導向 敏捷開發的深入人心,越來越多的程式設計師希望能夠借助設計模式,使自己的 更利於重用 更利於被人理解 可靠性更 不同的情況下需要用什麼樣的模式,如何實現這些模式,在各類著作中已經介紹的相當清晰了,但是關於設計模式實現的時機,...