系統架構
整合應用程序大的結構。經常提到的系統架構有兩種:MVC和三層架構。均是為了降低系統之間的耦合度。
1、三層架構
- 視圖層View層:用於接收用戶提交的代碼
- 服務層Service層:系統的業務邏輯主要在這里完成
- 持久層Dao層:直接操作數據庫的代碼
為了更好的降低各層之間的耦合度,在三層架構設計中,采用面向抽象編程,即上層對下層的調用,是通過接口實現的。而下層對上層的真正服務提供者,是下層接口的實現。服務標准(接口)是相同的,服務提供者(實現類)可以更換,這就實現了層之間的耦合。
系統的復雜度即是耦合度
- 視圖層
- 業務邏輯層
- 數據訪問層 DAO 數據訪問對象
一個類只做一種事
一個方法只做一件事
寫且只寫一次
2、MVC模式
什么是MVC?
MVC:即Model模型、View視圖、及Controller控制器
- View:視圖,為用戶提供使用界面,與用戶直接進行交互
- Model:模型,承載數據,並對用戶提交請求進行計算的模塊。其分為兩類,一類稱為數據承載Bean,一類稱為業務處理Bean。所謂數據承載Bean是指實體類,專門用戶承載業務數據的,如Student、User等。而業務處理Bean則是指Service或Dao對象,專門用於處理用戶提交請求的。
- Controller:控制器,用於將用戶請求轉發給相應的Model進行處理,並根據Model的計算結果向用戶提供相應響應。
MVC架構的工作流程
- 用戶通過View頁面向服務器提出請求,可以是表單請求,超鏈接請求,AJAX請求等;
- 服務端Controller控制器接收到請求后對請求進行解析,找到相應的Model對用戶請求進行處理
- Model處理后,將處理結果再交給Controller
- Controller在接收到處理結果后,根據處理結果找到要作為向客戶端發回的響應View頁面。頁面經過渲染(數據填充后),再發給客戶端。
MVC模式是應用於三層架構的視圖層的模式
重構原則
重構就是提取方法
事不過三,三則重構