項目分層(分包)的作用
程序為什么要分包分層?
以顧客去飯店吃飯案例分析一下:
小飯店: 一個服務員搞定(接待顧客\點菜\炒菜)
大飯店:
迎賓員(是否有預定\ 詢問吃中餐還是西餐或者燒烤等\ 幾位用餐 \ 領路到指定的包間\ 找點菜員為顧客點菜 )
點菜員(記錄顧客點餐內容\ 記錄是否有忌口等問題\ 找廚師為顧客炒菜)
廚師(按照顧客菜餚清單,進行炒菜)
通過案例發現,當程序規模小的時候,可以一個人全部完成;但程序規模大的時候,一個人難以完成,這時,要采用多人合作的方式來完成程序開發。
多人合作方式將會碰到工作任務分配問題,這時我們會想,每個人負責完成項目的一塊內容就可以了。那么,這一塊塊內容的划分,就需要我們采用分層(分包)的方式完成了。
通過下圖(用戶注冊功能)來講解下,項目中常見的分層(分包)。

l view層作用: 視圖層,即項目中的界面
l controller層作用: 控制層, 獲取界面上的數據,為界面設置數據; 將要實現的功能交給業務層處理
l service層作用: 業務層, 功能的實現, 與controller控制層和數據訪問層DAO交互, 將對數據庫的操作交給DAO數據訪問層來處理(java邏輯)
l dao層作用: 數據訪問層, 用來操作數據庫表的數據
l db數據庫: 這里指MySQL
l domain 實體包: 存放JavaBean
l tools工具包:存放項目中使用到的工具類
l test 測試包: 存放項目功能測試的代碼
