系統架構設計師-分層架構風格


  軟件架構風格描述一類特定應用領域中系統組織方式的慣用模式,反映了領域中諸多系統所共有的結構特征和語義特征,並指導如何將各個模塊和子系統有效組織成一個完整的系統。分層架構是一種常見的軟件架構風格,能夠有效簡化設計,使得設計的系統結構清晰,便於提高復用能力和產品維護能力。

  由於大量企業系統都由界面呈現、業務邏輯、數據存儲3類功能構成,因此廣泛采用分層架構風格進行系統設計。

  本文主要論述筆者參與管理和開發的企業應用系統建成項目,以及筆者在其中所承擔的主要工作。結合項目實際情況,指出應用系統的各個層次,以及各個層次的主要功能。指出設計每個層次時需要注意的問題及相應的解決方案。

  結合項目實際情況,指出所開發的應用系統總體架構,特別是架構的層次關系。分層架構設計是一種常見的架構設計方法,能夠有效簡化設計,使設計的系統架構清晰,並與提高復用能力和產品維護能力,一般來說,架構可以分為變現層、中間層和持久層3個層次。

  表現層,主要負責接收用戶的請求,對用戶的輸入、輸出進行檢查和控制。處理客戶端的一些動作,包括控制頁面跳轉等,並向用戶呈現最終的結果信息。表現層主要采用MVC結構來實現,控制器負責接收用戶的請求,並決定應該調用哪個模型來處理。然后模型根據用戶請求調用中間層進行相應的業務邏輯處理,並返回數據。最后控制器調用相應的視圖來格式化模型返回的數據,並通過視圖呈現給用戶。

  中間層,中間層主要包括業務邏輯層組件、業務邏輯層工作流、業務邏輯層實體和業務邏輯層框架4個方面,業務邏輯層組件分為接口和實現兩個部分,接口用於定義業務邏輯組件必須實現的方法。通常按木塊來設計業務邏輯組件,每個模塊設計為一個業務邏輯組件。並且每個業務邏輯組件以多個DAO組件作為基礎,從而實現對外提供系統的業務邏輯服務;業務邏輯層工作流能夠實現在多個參與者之間按照某種預定義的規則傳遞文檔、信息或任務的過程自動進行,從而實現某個預期的業務目標,或者促進此目標的實現;業務邏輯層實體提供對業務數據以及相關功能的狀態編程訪問,業務邏輯層實體數據可以使用具有復雜架構的數據來構建,這種數據通常來自數據庫中的多個相關表。業務邏輯層實體數據可作為業務過程部分IO參數傳遞,業務邏輯層的實體可以是可序列化的,以保持他們的當前狀態。業務邏輯層是實現系統功能的核心組件,采用容器的形式,便於系統功能的開發、代碼的重用和管理。

  持久層,主要負責數據的持久化存儲,即將業務數據存儲在文件、數據庫等持久化存儲介質中,主要功能是為業務邏輯提供透明的數據訪問、持久化、加載等能力。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM