不受技術(shù)限制的設(shè)計(jì)
- 編輯:admin -希望能夠制造出可用性最高且最可靠的系統(tǒng)、平臺(tái)和產(chǎn)品的成熟組織都明白,架構(gòu)和實(shí)現(xiàn)之間是有巨大差別的。一個(gè)平臺(tái)的架構(gòu)描述的是在特定的需求下,這個(gè)平臺(tái)是如何運(yùn)行的,而這個(gè)平臺(tái)的實(shí)現(xiàn),描述的是果用的具體技術(shù)或供應(yīng)商提供的組件。物理架構(gòu)側(cè)重的是描述執(zhí)行工作的組件,而邏輯架構(gòu)側(cè)重的是定義執(zhí)行工.作必需的活動(dòng)和功儲(chǔ)。我們常常是從系統(tǒng)的角度來(lái)討論架構(gòu)的,這樣可以把邏輯架構(gòu)映射到它的物理架構(gòu)上,從而能夠盡量在同一個(gè)視圖中同時(shí)評(píng)估兩者。實(shí)現(xiàn)只是架構(gòu)的一個(gè)快照,它甚至可能與架構(gòu)的最終狀態(tài)成想要的狀
希望能夠制造出可用性最高且最可靠的系統(tǒng)、平臺(tái)和產(chǎn)品的成熟組織都明白,架構(gòu)和實(shí)現(xiàn)之間是有巨大差別的。一個(gè)平臺(tái)的架構(gòu)描述的是在特定的需求下,這個(gè)平臺(tái)是如何運(yùn)行的,而這個(gè)平臺(tái)的實(shí)現(xiàn),描述的是果用的具體技術(shù)或供應(yīng)商提供的組件。物理架構(gòu)側(cè)重的是描述執(zhí)行工作的組件,而邏輯架構(gòu)側(cè)重的是定義執(zhí)行工.作必需的活動(dòng)和功儲(chǔ)。我們常常是從系統(tǒng)的角度來(lái)討論架構(gòu)的,這樣可以把邏輯架構(gòu)映射到它的物理架構(gòu)上,從而能夠盡量在同一個(gè)視圖中同時(shí)評(píng)估兩者。實(shí)現(xiàn)只是架構(gòu)的一個(gè)快照,它甚至可能與架構(gòu)的最終狀態(tài)成想要的狀態(tài)不一致。
例如,以一個(gè)架構(gòu)為例,這個(gè)架構(gòu)具有一個(gè)寫數(shù)據(jù)庫(kù),所有的寫和更新操作都在這個(gè)數(shù)據(jù)庫(kù)中進(jìn)行,此外它還有幾個(gè)讀數(shù)據(jù)庫(kù),所有的讀操作都以負(fù)載均衡的方式在這些數(shù)據(jù)庫(kù)中進(jìn)行。對(duì)于個(gè)非常小的站點(diǎn)來(lái)說(shuō),用一個(gè)數(shù)據(jù)庫(kù)就可以滿足所有這些操作(當(dāng)然出于高可用性考慮,還需要一個(gè)備川數(shù)據(jù)庫(kù))。
這種情況的實(shí)現(xiàn)可以只用一個(gè)數(shù)據(jù)庫(kù),而該站點(diǎn)的架構(gòu)可以具有多個(gè)數(shù)據(jù)庫(kù)。進(jìn)步考慮這個(gè)例子,該架構(gòu)是通過(guò)抽象數(shù)據(jù)訪問(wèn)層(DAL)成數(shù)據(jù)訪問(wèn)對(duì)象(DAO)來(lái)調(diào)取數(shù)據(jù)庫(kù)的。而在某個(gè)時(shí)間點(diǎn)的特定實(shí)現(xiàn),可能只是一個(gè)Microsof的數(shù)據(jù)庫(kù),不過(guò)經(jīng)過(guò)些修改,果用了DAL/DA0之后,這個(gè)實(shí)現(xiàn)最終會(huì)變成個(gè)開源數(shù)據(jù)庫(kù)或者來(lái)自BM、Oracle或Sybase的數(shù)據(jù)庫(kù)。不受技術(shù)限制的設(shè)計(jì)(TAD)和不受技術(shù)限制的APP開發(fā)架構(gòu)(TAA),目的是把設(shè)計(jì)和架構(gòu)與采用的技術(shù)和特定的實(shí)現(xiàn)分離開。這種分離會(huì)在降低產(chǎn)品、系統(tǒng)和平臺(tái)的成本和風(fēng)險(xiǎn)的同時(shí),提高它們的可擴(kuò)展性和可用性。我們的有些客戶甚至把TAD成TAA加人了他們的架構(gòu)設(shè)計(jì)原則。
