




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、企業(yè)級系統(tǒng)架構(gòu)的理解在我們剛開始學習架構(gòu)的時候,首先會想到分層的概念,分層架構(gòu)比較經(jīng)典的是三層架構(gòu),那么,什么是三層架構(gòu)呢?它包括表現(xiàn)層,業(yè)務層,數(shù)據(jù)訪問層;而對于一個新手來說,從抽象意義上的三層架構(gòu),邏輯上就劃分為三個層。 AD: 這個是最基基本的三三層架構(gòu)構(gòu)模式。表現(xiàn)層充當當系統(tǒng)的的界面呈呈現(xiàn)以及及UI邏邏輯的角角色,也也就是說說,UII(用戶戶界面)屬于表表現(xiàn)層;舉一個對于于aspp.neet WWebFFormm來說,人人們喜歡歡把對于于UI的的控制邏邏輯(服服務器控控件的讀讀取、設設置、事事件等等等)寫在在頁面的的后置隱隱藏代碼碼中,并并且依賴賴業(yè)務邏邏輯層。當當然,服服務器控控件支
2、持持數(shù)據(jù)綁綁定的功功能,可可以通過過數(shù)據(jù)源源進行綁綁定控件件。這樣樣就可以以節(jié)省在在后置隱隱藏中的的代碼。因此,我們們就可以以把表現(xiàn)現(xiàn)層分為為UI用用戶界面面以及UUI邏輯輯:UI用戶界界面的職職責只是是作為數(shù)數(shù)據(jù)輸入入和輸出出后的展展示工作作。UI邏輯的的職責是是負責業(yè)業(yè)務邏輯輯層以及及UI用用戶界面面之間的的數(shù)據(jù)交交互,并并且盡可可能地讓讓UI邏邏輯不依依賴于UUI技術(shù)術(shù)。其中UI用用戶界面面的實現(xiàn)現(xiàn)方式有有很多,包包括ASSP.NNET,WWinFFormm,WPPF,SSilvverllighht,移移動Weeb,智智能設備備等等。將表現(xiàn)層中中UI頁頁面和UUI邏輯輯分離的的策略中中,
3、當前前使用最最多的兩兩種模式式是MVVC模式式和MVVP模式式。MVC模式式,即模模型-視視圖-控控制器模模式,通通過視圖圖觸發(fā)并并執(zhí)行某某個操作作,調(diào)用用控制器器,通過過控制器器去操作作業(yè)務層層,最終終返回模模型,在在視圖中中進行展展示。這這里的模模型可以以是一個個領(lǐng)域模模型(DDM),也也可以是是一個數(shù)數(shù)據(jù)遷移移對象(DTOO)。MVP模式式,即模模型-視視圖-展展示器模模式,和和MVCC模式有有點像,不不同的是是MVPP中視圖圖和模型型是被完完全分離離出來的的,視圖圖中定義義一個接接口,而而展示器器通過調(diào)調(diào)用該接接口的方方法以控控制視圖圖。因此此,視圖圖和模型型是松散散的,展展示器也也充
4、當了了一個控控制器的的角色,同同時它也也不依賴賴于UII技術(shù)。另外再介紹紹一種模模式PMM(Prreenntattionn Moodell),它它可以說說是MVVP的變變體,在在PM中中,視圖圖不定義義接口,這這里的模模型只是是表示視視圖狀態(tài)態(tài)的類,視視圖中的的元素被被直接綁綁定到模模型屬性性上。例例如在WWPF中中,WPPF就先先天的具具有數(shù)據(jù)據(jù)雙向綁綁定機制制以及事事件通知知屬性機機制。所以它特別別適用于于WPFF,Slliveerliightt等等。在開始業(yè)務務層之前前,不得得不說一一個前提提,在一一個小型型項目中中,直接接讓表現(xiàn)現(xiàn)層調(diào)用用業(yè)務層層,足以以解決所所有問題題。但是是,當項項
5、目大到到使用多多種表現(xiàn)現(xiàn)形式,如如使用了了各種UUI技術(shù)術(shù),ASSP.NNET,WWPF,移移動設備備等等,就就要考慮慮在你的的表現(xiàn)層層和業(yè)務務層之間間增加一一個層,以以至于讓讓表現(xiàn)層層和業(yè)務務層解耦耦,因為為業(yè)務層層作為一一個業(yè)務務中間件件的平臺臺,最好好不要暴暴露于表表現(xiàn)層中中,這個個層就是是傳說中中的服務務層。架架構(gòu)圖又又演化為為:服務層實際際上并不不執(zhí)行任任何具體體的工作作,其功功能在于于組織各各個業(yè)務務對象,服務層層將業(yè)務務層所有有的細節(jié)節(jié)對表現(xiàn)現(xiàn)層都隱隱藏起來來,服務務器將組組織業(yè)務務邏輯層層中的組組件,并并且通過過數(shù)據(jù)遷遷移對象象(DTTO)與與表現(xiàn)層層交互,因此就就產(chǎn)生一一個D
6、TTO模型型。為了實現(xiàn)服服務的可可重用性性,需要要使用服服務接口口,表現(xiàn)現(xiàn)層通過過規(guī)定的的接口訪訪問功能能。服務務的實現(xiàn)現(xiàn)繼承服服務接口口,而服服務的實實現(xiàn)專注注于業(yè)務務層的調(diào)調(diào)用。對于服務層層,常用用的方法法包括WWeb服服務、.NETT Reemottingg、Reest以以及WCCF技術(shù)術(shù)。本人比較建建議使用用WCFF作為服服務,因因為可以以方便地地通過配配置達到到遠程調(diào)調(diào)用服務務的目的的。服務層消除除了兩個個表現(xiàn)層層和業(yè)務務層之間間的耦合合,服務務層可以以實現(xiàn)一一個遠程程接口,達達到多UUI技術(shù)術(shù)甚至多多平臺上上的通信信。當然增加服服務層也也有缺點點,假如如使用WWCF服服務,會會增加
7、系系統(tǒng)的調(diào)調(diào)用開銷銷,進而而影響性性能。業(yè)務層中包包含系統(tǒng)統(tǒng)所需要要業(yè)務過過程上的的實現(xiàn),并并與下層層的數(shù)據(jù)據(jù)訪問層層交互。我們通常也也叫做業(yè)業(yè)務層叫叫做業(yè)務務邏輯層層,但我我認為業(yè)業(yè)務邏輯輯層是屬屬于業(yè)務務層的一一方面,業(yè)業(yè)務邏輯輯更專注注于業(yè)務務上邏輯輯算法的的實現(xiàn)。因因為業(yè)務務層還可可以包括括其他的的方面。業(yè)務層必須須包括對對業(yè)務實實體盡心心建模的的對象模模型,表表達了客客戶的所所有策略略和需求求的業(yè)務務規(guī)則,因因此就產(chǎn)產(chǎn)生了領(lǐng)領(lǐng)域模型型。(PS:如如果這里里你不使使用領(lǐng)域域模型,那那么需要要采用業(yè)業(yè)務規(guī)則則層進行行業(yè)務功功能上的的業(yè)務規(guī)規(guī)則的驗驗證和控控制)領(lǐng)域模型包包括對實實體的屬屬
8、性定義義,方法法定義以以及實體體與實體體之間的的關(guān)系。從從這個角角度上看看,UMML建模模至關(guān)重重要,通通過對UUML動動態(tài)圖和和靜態(tài)圖圖的描述述,可以以映射到到領(lǐng)域模模型中。從服務層剛剛才講到到了DTTO模型型,這里里需要一一個機制制將DTTO轉(zhuǎn)化化為領(lǐng)域域模型,所所以產(chǎn)生生了DTTO映射射層(DDTOMMappper)。另外業(yè)務層層還包括括核心中中間件技技術(shù),包包括第三三方組件件,以及及工作流流引擎等等等。業(yè)務層需要要考慮到到一些與與數(shù)據(jù)訪訪問層交交互的設設計模式式,模式式中包括括事物腳腳本模式式、表模模塊模式式、活動動記錄模模式、領(lǐng)領(lǐng)域模型型模式。事物腳本模模式是通通過方法法來執(zhí)行行業(yè)務
9、流流程,它它是一個個過程式式模型,事事物腳本本的每個個方法都都有一個個特定的的事物腳腳本,它它側(cè)重于于業(yè)務上上一系列列流程上上的順序序操作,它它實現(xiàn)起起來很簡簡單,但但是它有有個致命命的缺點點就是它它會造成成很多重重復的代代碼。表模塊模式式比起事事物腳本本模式,具具有一定定的結(jié)構(gòu)構(gòu),它的的思想也也很簡單單,每個個數(shù)據(jù)表表都定義義一個業(yè)業(yè)務組件件(實體體類,實實體操作作類),在在.NEET中更更多的使使用DaataSSet作作為表模模型的數(shù)數(shù)據(jù)交互互。但是是它也有有一個缺缺點就是是它是從從數(shù)據(jù)庫庫驅(qū)動它它不適合合于大量量的數(shù)據(jù)據(jù)表以及及數(shù)據(jù)表表之間的的復雜關(guān)關(guān)系?;顒佑涗浤DJ街械牡膶ο笾兄校?/p>
10、以以包含數(shù)數(shù)據(jù)和方方法。它它接近于于數(shù)據(jù)表表的結(jié)構(gòu)構(gòu),它的的對象中中執(zhí)行方方法中可可以包含含CRUUD操作作,驗證證算法,以以及其他他的計算算功能。一一般來說說,領(lǐng)域域模型不不是太復復雜,活活動記錄錄模式是是個好選選擇。當當然他也也存在問問題,同同樣地,它它對于復復雜的業(yè)業(yè)務上,維維護的成成本也很很高,并并且如果果需求變變更導致致數(shù)據(jù)庫庫修改,就就需要調(diào)調(diào)整記錄錄對象模模型中的的相關(guān)代代碼。經(jīng)典應用:LINNQ-TTO-SSQL以以及Caastlle AActiiveRRecoord。領(lǐng)域模型模模式是從從領(lǐng)域驅(qū)驅(qū)動設計計中衍生生來的,它它是以業(yè)業(yè)務為核核心的設設計模式式。它對對于復雜雜的業(yè)務務
11、邏輯,相相當適用用。前三三種方式式使用的的是以數(shù)數(shù)據(jù)驅(qū)動動方式,數(shù)數(shù)據(jù)驅(qū)動動方式特特點簡單單,但是是當系統(tǒng)統(tǒng)到了一一定的規(guī)規(guī)模后,就就會到難難以維護護的程度度。數(shù)據(jù)訪問層層的目的的很明確確,主要要作為提提供數(shù)據(jù)據(jù)持久化化的功能能,包括括數(shù)據(jù)的的讀取和和寫入,另另外還必必須包括括事務處處理,并并發(fā)控制制等等。操作數(shù)據(jù)庫庫的方法法可以有有兩種方方式,OORM方方式,AADO.NETT方式。ORM可以以采用一一些第三三方的OORM框框架來實實現(xiàn),AADO.NETT采用AASP.NETT自帶的的數(shù)據(jù)庫庫操作來來實現(xiàn)。不同的數(shù)據(jù)據(jù)庫具有有不同的的持久化化實現(xiàn),因因此這里里添加一一個存儲儲倉庫接接口層,來來適應不不同的數(shù)數(shù)據(jù)庫實實現(xiàn),這這里你可可以使用用IOCC依賴注注入方式式進行數(shù)數(shù)據(jù)庫選選型,可可以利用用Uniity、SSpriing.NETT、Caastlle的IIOC容容器等等等。最后各個層層中都可可以依賴賴于公共共基礎設設施層。公共基礎設設施層可可以包括括Commmonn通用模模塊,LLogggingg日志模模塊,EExceeptiion異異常模塊塊,Coonfiigurratiion配配置模塊塊,DII依賴注注入模塊塊,單元元測試模模塊以及及第三方方組件(例如NNHibbernnatee、Spprinnt.NNET、C
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 信陽涉外職業(yè)技術(shù)學院《招聘與面試技巧》2023-2024學年第二學期期末試卷
- 健身行業(yè)投資與并購咨詢服務行業(yè)深度調(diào)研及發(fā)展項目商業(yè)計劃書
- 企業(yè)視頻宣傳片企業(yè)制定與實施新質(zhì)生產(chǎn)力項目商業(yè)計劃書
- 江蘇醫(yī)藥職業(yè)學院《公共建筑設計(Ⅱ)》2023-2024學年第二學期期末試卷
- 神秘埃及法老陵墓餐廳行業(yè)跨境出海項目商業(yè)計劃書
- 口才與演講技巧提升行業(yè)跨境出海項目商業(yè)計劃書
- 兒童劇與教育演出行業(yè)跨境出海項目商業(yè)計劃書
- 鹽城工業(yè)職業(yè)技術(shù)學院《體育游戲創(chuàng)編與實踐》2023-2024學年第二學期期末試卷
- 會所鑰匙管理制度
- 會計印章管理制度
- 小學民法典主題班會教案
- 2025年江西報業(yè)傳媒集團招聘題庫帶答案分析
- 公司退貨流程管理制度
- MHD多相流體系統(tǒng)的建模與仿真-洞察闡釋
- 辦公軟件實操試題及詳細答案
- 礦產(chǎn)品銷售合作合同范本
- 集裝箱冷板式液冷數(shù)據(jù)中心技術(shù)規(guī)范
- GB/T 7106-2019建筑外門窗氣密、水密、抗風壓性能檢測方法
- GB/T 28046.4-2011道路車輛電氣及電子設備的環(huán)境條件和試驗第4部分:氣候負荷
- (精心整理)考試作文格紙
- 倉庫管理員培訓教材課件
評論
0/150
提交評論