全面物件導向體系結構設計 (轉)

gugu99發表於2007-08-16
全面物件導向體系結構設計 (轉)[@more@]

全面面向體系結構設計
一、 體系結構
本電子商務整體採用B/S系統架構,為了更好地複用菸草業務邏輯,使整體系統結構做到強內聚,弱耦合,整個系統應該分為三層:介面表現層,業務邏輯層,資料層。

由於現實世界由物件組合而成,因此係統應該採用物件導向設計和才能更好地把現實世界對映為應用,使系統更易生成和維護。

由於各種技術條件限制,現在業務邏輯層和資料儲存層還無法做到物件導向,因此如何把物件導向地業務邏輯層對映為介面表現層和資料儲存層就成為整個系統關鍵。

介面表現層按照現有技術限制,最好採用HTML介面,不過因為HTML是過程式語言,如何與物件互相轉換,這就要引入來進行轉換,這方面可以引進最新ECHO,他可使得介面程式設計物件導向化,完全遮蔽HTML,JS,CSS等技術,採用內似技術,能實現端事件處理機制,使得介面表現層與業務邏輯層很好地銜接起來。

資料儲存層受發展限制,主流資料庫都是關係型資料庫,顯然如何在關係型資料庫與物件之間如何轉換,就涉及到中介軟體。這方面中介軟體可以採用O/R對映框架JDO。JDO能把物件和表互相轉換,遮蔽資料庫等底層技術,從而使物件持久化更加容易。

 

 

 

 

 

 

 

 

二、 介面表現層設計
介面表現層用來作為系統輸入,輸出介面,在現有技術條件限制下,一般用HTML方式來實現,由於HTML是程式導向式,很難採用物件導向程式設計,結果是介面表現層邏輯程式碼和表現層程式碼混雜在一起,編碼無法和麵向物件設計無縫銜接,程式碼不易維護,介面層元素無法做到複用。

為解決這些問題,建議採用ECHO框架,該框架解決了O/P對映問題,使得程式設計人員只需按照SWING方式編寫介面,由框架自動產生HTML介面以及打包、解包HTML表單資料,支援伺服器端事件機制,使程式設計人員無須關心表單提交,按鈕編碼等技術細節,只需在事件處理裡直接處理事件即可。

該框架使得程式設計人員完全採用物件導向式程式設計,無須關注HTML,JS等底層細節,可以更好地分離頁面和邏輯,增加系統可維護性,與物件導向設計無縫銜接,並做到介面層元素重用。

三、 業務邏輯層設計
業務邏輯層主要是與行業相關地業務邏輯,這些元件相互通訊,計算完成整個系統功能。
因為本系統基於平臺,所以採用Bean元件規範。這些元件作為系統核心元件,設計要具有正確性,可擴充套件性,才可以作為公司可複用資產,用來保障這些元件在以後各個同類專案中可複用性。


四、 資料儲存層設計
資料庫儲存層主要用來把資料持久化,現在主流資料庫都是關係型資料庫,顯然如何與物件互相轉換,需要一箇中介軟體,這方面JDO無異表現出色。

JDO可以把物件與表互相轉換,可以把物件各項值直接儲存到表中,也可以透過表生成物件,顯然做到了物件與表無縫轉換,使程式設計人員無須關心資料庫底層細節,使得平臺可移植性加強,耦合性降低,減少了程式碼編寫工作量,並能做到資料儲存層元件複用。

五、 支援工具層設計
一個系統顯然需要有一些程式導向式工具,用來提供全系統公用工具,如日誌功能,功能等等。

PS:請大家多指教,謝謝,呵呵


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10748419/viewspace-960503/,如需轉載,請註明出處,否則將追究法律責任。

相關文章