以2/8原則指導(dǎo)我們的底層框架設(shè)計
Posted on 2006-07-18 15:18 Nomad 閱讀(1928) 評論(10) 編輯 收藏 所屬分類: Code Life 、Java??? 我想很多人都聽說過“2/
??? 在應(yīng)用軟件的研發(fā)中同樣遵守這個原則,我們寫的20%底層代碼將會起到80%的作用。做過Web項目的人應(yīng)該都知道,大多數(shù)程序都是圍繞增、刪、改、條件查詢等主題實現(xiàn)的,只是需求不同,具體的實現(xiàn)不同罷了。當(dāng)項目重復(fù)性太高的時候,我們開始學(xué)習(xí)、使用框架技術(shù),比如Hibernate就幫我們提取了很多對數(shù)據(jù)庫操作的程序,目的也是減少程序員編寫代碼的數(shù)量與時間。而框架技術(shù)并不能包含我們工作的方方面面,我們依然需要在工作中不斷總結(jié)、不斷歸納,猶如Template設(shè)計模式,我們需要將重復(fù)的工作總結(jié)提煉出來,做成一個個模版,以此來不斷簡化我們的工作。所以我們需要以2/8原則指導(dǎo)開發(fā)設(shè)計,讓更多的活交給框架去工作,讓各種業(yè)務(wù)流做成模版類,做足底層的工作,將20%的底層代碼發(fā)揮出80%貢獻(xiàn)。
??? 下面以我熟悉的平臺框架舉個模版的例子。在Hibernate框架下編寫DAO層代碼,我們需要從數(shù)據(jù)庫中取出數(shù)據(jù),以列表形式顯示在頁面上。這個例子將向你展示,只要做好底層工作,上層的業(yè)務(wù)邏輯就會變得非常簡單(只有短短兩行)。

??2

??3

??4

??5



??6

??7

??8

??9

?10

?11

?12

?13

?14

?15

?16

?17


?18

?19

?20

?21

?22

?23


?24

?25

?26

?27

?28

?29

?30

?31



?32

?33

?34

?35



?36

?37

?38



?39

?40

?41

?42

?43



?44

?45

?46

?47

?48

?49

?50

?51



?52

?53

?54

?55

?56

?57

?58

?59

?60

?61

?62

?63

?64

?65

?66

?67

?68

?69

?70


?71

?72

?73

?74

?75

?76

?77

?78



?79

?80

?81

?82

?83

?84



?85

?86

?87

?88



?89



?90

?91

?92



?93

?94

?95

?96

?97

?98



?99

100



101

102

103

104

105

106

107

108

109

110

111

112



113

114



115

116

117


118

119

120

121

122

看懂了嗎?如果項目中我們需要完成幾十個這樣的報表輸出,有了這樣的底層代碼結(jié)構(gòu),編寫起來是不是很簡單呢。