之前從沒(méi)寫(xiě)過(guò)技術(shù)文章, 都不知道本篇要如何開(kāi)頭. 以前之所以不寫(xiě), 是因?yàn)榫W(wǎng)絡(luò)上關(guān)于技術(shù)問(wèn)題的優(yōu)秀教程文章已多如牛毛, 有珠玉在前, 再寫(xiě)也不過(guò)是拾人牙慧, 做個(gè)知識(shí)的二道販子而已.
既然如此, 那現(xiàn)在為什么又要寫(xiě)呢? 此事一言難盡, 說(shuō)來(lái)話長(zhǎng). 而且也正是由于網(wǎng)上文章過(guò)于豐富龐雜, 有些略寬泛而多發(fā)散, 有些太深入而偏理論. 故此也確實(shí)需要有所取舍, 結(jié)合實(shí)際的工作經(jīng)驗(yàn)對(duì)這些技術(shù)知識(shí)進(jìn)行系統(tǒng)的提煉總結(jié).
實(shí)際工作中, 所接觸的項(xiàng)目百分之九十都是 java web 管理系統(tǒng). 這類系統(tǒng)結(jié)構(gòu)幾乎雷同, 通常都是使用 spring 框架支撐的貧血模型, 結(jié)合數(shù)據(jù)庫(kù)做 CRUD 而已. 所謂系統(tǒng)的不同, 無(wú)非是實(shí)體所代表涵義不同. 所謂邏輯的差異, 也不過(guò)是 CRUD 的條件或字段的變化. 此類系統(tǒng)多有相似, 理應(yīng)千人一面. 然而實(shí)際瀏覽代碼, 卻是千人千面, 甚至同一系統(tǒng)每個(gè)人的寫(xiě)的也是各有不同.
故此, 后續(xù)幾篇文章, 打算大致按項(xiàng)目分層, 斗膽總結(jié)一下每層代碼的規(guī)范和最佳實(shí)踐. 本人技術(shù)一般, 水平有限, 文中如有謬誤, 敬請(qǐng)諸位指正.