極限程式設計中的簡單設計原則
1.考慮能夠工作的最簡單的事情
XP團隊最開始的工作是以儘可能簡單的方式實現第一批使用者需求。儘可能尋找實現當前使用者需求的最簡單的設計。在實現當前的使用者需求時,如果能夠使用平面檔案,就不去使用資料庫或者EJB;如果能夠使用簡單的socket連線,就不去使用ORB或者RMI;如果能夠不使用多執行緒就別去用它。
2.假設將不需要某些基礎結構
XP團隊的工作可能不會從基礎結構開始,他們可能並不先去選擇使用資料庫或中介軟體。開始時假設將不需要那些基礎結構。只有在有證據,或者至少有十分明顯的跡象表明現在引入這些基礎結構比繼續等待更加合算是,才將其引入。
3.消除重複的程式碼
無論在哪裡發現重複的程式碼,都應該消除它們。當發現那些重複的程式碼時,可以通過定義一個函式或基類的方法消除它們。有時兩個或多個演算法非常相似,但是它們之間存在著微妙的差別,就將它們變成函式,或者使用TEMPLATE METHOD模式。
消除重複的最好方法就是抽象。畢竟,如果兩種事物相似的話,必定存在某種抽象能夠統一它們。消除重複的行為會迫使團隊提煉出許多抽象,並進一步減少了程式碼間的耦合。
簡單的設計最重要的特性就是容易適應變化.為了達到這樣的目的,簡單設計應當:
能夠簡單地被理解.這依賴於你程式碼的可理解性.只有可理解,下面的簡單性才能達到.
能夠簡單地被修改和擴充套件.OO系統往往通過增量的方法改變或增加系統行為,所以也就是要被簡單地重用,這要求我們沒有重複程式碼.
有最少數目的類.要易於理解系統,那麼系統中每一個類應當和需要解決的問題的每一個重要概念相對應,如果人工加入許多毫無意義的類或者太多與問題概念無法對應的類,系統將無法理解
有最少數目的方法.每一個方法應該有他獨立的意義, 如果沒有可以言述意圖的名字,那麼系統將難以理解.
相關文章
- 極限程式設計程式設計
- 極限程式設計思想程式設計
- 遠離極限程式設計程式設計
- 不要陷入極限程式設計的陷阱程式設計
- 極限程式設計的“權利法案”程式設計
- 簡單介紹架構設計的原則!架構
- 程式設計原則程式設計
- 極限程式設計 vs 互動式設計 (轉)程式設計
- 科學軟體十條簡單程式設計原則程式設計
- 大型專案的XP(極限程式設計)程式設計
- 程式設計原則(整理)程式設計
- 極限程式設計,一次反思程式設計
- 設計模式的設計原則設計模式
- 程式設計師應該遵守的程式設計原則程式設計師
- 【設計原則】物件導向程式設計的六大原則物件程式設計
- 設計原則之【單一職責原則】
- 簡潔的網頁設計原則網頁
- 設計模式中的那些原則設計模式
- 設計原則 設計模式設計模式
- 設計模式 - 設計原則設計模式
- 【設計模式】設計原則設計模式
- 物件導向設計原則,以及包的設計原則物件
- [翻譯]Bob大叔:反思極限程式設計程式設計
- 擁抱極限程式設計(Do do XP)程式設計
- 【架構設計】保持簡單輕量設計的三個原則——DRY,KISS, YAGNI架構
- 設計原則
- Shell程式設計——極簡教程程式設計
- 極簡設計模式-單例模式設計模式單例
- Java中的設計模式和原則Java設計模式
- XML 程式設計思想: Harold 的高效 XML 設計原則(轉)XML程式設計
- Google的設計原則Go
- 每個程式設計師都必須遵守的程式設計原則程式設計師
- 開閉原則——物件導向程式設計原則物件程式設計
- 極限運算中的連續性原則
- 最簡單的C程式設計--順序程式設計C程式程式設計
- Javascript 設計模式之設計原則JavaScript設計模式
- JavaScript設計模式(一)設計原則JavaScript設計模式
- 設計模式(07)——設計原則(2)設計模式