Posted on 2009-03-13 00:16
S.l.e!ep.¢% 閱讀(434)
評論(0) 編輯 收藏 引用 所屬分類:
Design Pattern
??????
1.考慮能夠工作的最簡單的事情
??????? XP團(tuán)隊(duì)最開始的工作是以盡可能簡單的方式實(shí)現(xiàn)第一批用戶需求。盡可能尋找實(shí)現(xiàn)當(dāng)前用戶需求的最簡單的設(shè)計(jì)。在實(shí)現(xiàn)當(dāng)前的用戶需求時(shí),如果能夠使用平面文件,就不去使用數(shù)據(jù)庫或者EJB;如果能夠使用簡單的socket連接,就不去使用ORB或者RMI;如果能夠不使用多線程就別去用它。
???????
???????
2.假設(shè)將不需要某些基礎(chǔ)結(jié)構(gòu)
??????? XP團(tuán)隊(duì)的工作可能不會(huì)從基礎(chǔ)結(jié)構(gòu)開始,他們可能并不先去選擇使用數(shù)據(jù)庫或中間件。開始時(shí)假設(shè)將不需要那些基礎(chǔ)結(jié)構(gòu)。只有在有證據(jù),或者至少有十分明顯的跡象表明現(xiàn)在引入這些基礎(chǔ)結(jié)構(gòu)比繼續(xù)等待更加合算是,才將其引入。
???????
???????
3.消除重復(fù)的代碼
??????? 無論在哪里發(fā)現(xiàn)重復(fù)的代碼,都應(yīng)該消除它們。當(dāng)發(fā)現(xiàn)那些重復(fù)的代碼時(shí),可以通過定義一個(gè)函數(shù)或基類的方法消除它們。有時(shí)兩個(gè)或多個(gè)算法非常相似,但是它們之間存在著微妙的差別,就將它們變成函數(shù),或者使用TEMPLATE METHOD模式。
??????? 消除重復(fù)的最好方法就是抽象。畢竟,如果兩種事物相似的話,必定存在某種抽象能夠統(tǒng)一它們。消除重復(fù)的行為會(huì)迫使團(tuán)隊(duì)提煉出許多抽象,并進(jìn)一步減少了代碼間的耦合。