優(yōu)秀的代碼都是如何分層的?
閱讀本文大概需要 5 分鐘。
來自:juejin.im/post/5b44e62e6fb9a04fc030f216
1、背景
方便后續(xù)代碼進(jìn)行維護(hù)擴(kuò)展; 分層的效果需要讓整個(gè)團(tuán)隊(duì)都接受; 各個(gè)層職責(zé)邊界清晰。
2、如何進(jìn)行分層
2.1、阿里規(guī)范

2.2、優(yōu)化分層



3、分層領(lǐng)域模型的轉(zhuǎn)換
DO(Data Object):與數(shù)據(jù)庫表結(jié)構(gòu)一一對(duì)應(yīng),通過DAO層向上傳輸數(shù)據(jù)源對(duì)象。 DTO(Data Transfer Object):數(shù)據(jù)傳輸對(duì)象,Service或Manager向外傳輸?shù)膶?duì)象。 BO(Business Object):業(yè)務(wù)對(duì)象。由Service層輸出的封裝業(yè)務(wù)邏輯的對(duì)象。 AO(Application Object):應(yīng)用對(duì)象。在Web層與Service層之間抽象的復(fù)用對(duì)象模型,極為貼近展示層,復(fù)用度不高。 VO(View Object):顯示層對(duì)象,通常是Web向模板渲染引擎層傳輸?shù)膶?duì)象。 Query:數(shù)據(jù)查詢對(duì)象,各層接收上層的查詢請(qǐng)求。注意超過2個(gè)參數(shù)的查詢封裝,禁止使用Map類來傳輸。


4、總結(jié)
評(píng)論
圖片
表情
