黄色国产视频-日韩亚洲欧美综合一区二区三区-欧美激情完整视频免费看-狠狠色狠狠综合久久|www.7kaixin.com

淺析企業(yè)架構(gòu)模式的幾種方式

日期:2011/12/29 / 人氣:

1.基本模式
      Layer Supertype:曾超類型,讓某一個(gè)類型充當(dāng)一層中所有類型的超類(父類)。在某一層中,所有的對(duì)象或很多對(duì)象都具有某些相同的方法,我們不希望這些方法在系統(tǒng)里被復(fù)制而產(chǎn)生冗余代碼,此時(shí)我們可以將這些行為移到一個(gè)通用的層超類型中。

佛山網(wǎng)站建設(shè)_佛山網(wǎng)站制作_佛山網(wǎng)站設(shè)計(jì)_佛山網(wǎng)站_佛山網(wǎng)頁(yè)設(shè)計(jì)_佛山網(wǎng)頁(yè)建設(shè)_佛山網(wǎng)頁(yè)制作

2.分層模式
      在分解復(fù)雜的軟件系統(tǒng)時(shí),用得最多到的技術(shù)就是分層模式。那么對(duì)系統(tǒng)進(jìn)行分層有哪些好處呢?
      1)無需過多的了解其他層次,可以直接某一層作為一個(gè)有機(jī)的整體來理解。
      2)可以替換某層的實(shí)現(xiàn),并且不會(huì)影響其它層,只要替換前后提供服務(wù)相同即可。
      3)可以將層次間的依賴性減到最低。
      4)分層有利于標(biāo)準(zhǔn)化:(1)層次并不能封裝所有的東西,甚至有時(shí)候會(huì)帶來級(jí)聯(lián)變動(dòng);(2)層次多了,也會(huì)影響性能。因?yàn)椴煌臄?shù)據(jù)形式要在不同層之間轉(zhuǎn)換。

3.業(yè)務(wù)邏輯設(shè)計(jì)模式
      業(yè)務(wù)邏輯設(shè)計(jì)模式如下:
      事務(wù)腳本模式:已先行或面向過程的方式來組織業(yè)務(wù)邏輯。它將每一個(gè)業(yè)務(wù)流程都包裝為一個(gè)大的、粗粒度的方法。
      活動(dòng)記錄:以底層的數(shù)據(jù)結(jié)構(gòu)為基礎(chǔ)來組織業(yè)務(wù)邏輯,每個(gè)對(duì)象都代表了表中的一行數(shù)據(jù)記錄。
      領(lǐng)域模型:是對(duì)現(xiàn)實(shí)中的領(lǐng)域?qū)ο笏M(jìn)行的抽象和提煉。每個(gè)領(lǐng)域?qū)ο蟀约旱臄?shù)據(jù)行為。

4.表現(xiàn)模式
      Front Controller(前端控制器)模式:通過引導(dǎo)請(qǐng)求經(jīng)過一個(gè)處理對(duì)象來統(tǒng)一所有的請(qǐng)求處理。
      Page Controller(頁(yè)面控制器)模式:最基本的思想就是,為Web站點(diǎn)上的所有頁(yè)面都在服務(wù)器上準(zhǔn)備一個(gè)模塊,這些模塊充當(dāng)控制器的角色。

5.對(duì)象關(guān)系映射
      通過以上分析,那么我們?nèi)绾伪3謽I(yè)務(wù)對(duì)象的數(shù)據(jù)和狀態(tài),以及如何從數(shù)據(jù)存儲(chǔ)中獲取業(yè)務(wù)對(duì)象的數(shù)據(jù)。
      Ouit Of Work:工作單元,確保所有線管的對(duì)象的改變?cè)谝粋(gè)業(yè)務(wù)事務(wù)里面,同時(shí)確保在提交狀態(tài)的時(shí)候維護(hù)業(yè)務(wù)對(duì)象狀態(tài)和數(shù)據(jù)的一致性,要么一起成功,要么一起失敗。
      Repository:資源庫(kù),用來協(xié)調(diào)領(lǐng)域和數(shù)據(jù)映射,是領(lǐng)域?qū)油耆魂P(guān)注數(shù)據(jù)的存取,隱藏了后臺(tái)的所有機(jī)制。
      DataMapper:數(shù)據(jù)映射,指把原生的數(shù)據(jù)取出來復(fù)制給一個(gè)對(duì)象,然后把對(duì)象的數(shù)據(jù)再次轉(zhuǎn)換保存為原生數(shù)據(jù)的過程。
      Identity Map:表示映射,通過在映射中保存每個(gè)已經(jīng)加載的對(duì)象,確保每個(gè)對(duì)象只加載一次,當(dāng)要訪問對(duì)象的時(shí)候,通過映射來查找它們。這個(gè)模式主要關(guān)注的是性能問題,如果多次加載相同數(shù)據(jù),勢(shì)必開銷很大。在使用標(biāo)識(shí)映射的時(shí)候還要考慮數(shù)據(jù)的一致性和并發(fā)性問題。
      Lazy Load:查詢對(duì)象,它能夠用業(yè)務(wù)對(duì)象的語(yǔ)言而不是數(shù)據(jù)庫(kù)的語(yǔ)言來描述查詢,這就意味著,我們?cè)跇?gòu)建查詢的時(shí)候,不必在意數(shù)據(jù)庫(kù)中的表名和列名。查詢對(duì)象一般使用設(shè)計(jì)模式中解釋器模式來實(shí)現(xiàn),查詢對(duì)象知道如何將自己轉(zhuǎn)換為底層數(shù)據(jù)存儲(chǔ)設(shè)備。

 

作者:朋友圈科技


Go To Top 回頂部