為什么選擇Caché
之Caché VS RDBMS
關(guān)系數(shù)據(jù)庫(kù)技術(shù)發(fā)展到今天,已經(jīng)相當(dāng)?shù)某墒,但是,這個(gè)為廣大開發(fā)人員所熟悉的技術(shù)并不見得是現(xiàn)在數(shù)據(jù)庫(kù)應(yīng)用開發(fā)的最佳選擇。今天,可能很少有程序員還在使用傳統(tǒng)的面向過程的語(yǔ)言來開發(fā)數(shù)據(jù)庫(kù)應(yīng)用,他們已經(jīng)在廣泛地采用各種面向?qū)ο蟮母呒?jí)語(yǔ)言來開發(fā)應(yīng)用程序,但是作為應(yīng)用程序的中心——數(shù)據(jù)庫(kù),卻仍然是和面向?qū)ο蠹夹g(shù)完全不同的關(guān)系型數(shù)據(jù)庫(kù)。
關(guān)系型數(shù)據(jù)庫(kù)把數(shù)據(jù)存儲(chǔ)在簡(jiǎn)單的兩維表中,這是一種表達(dá)大量數(shù)據(jù)的有效方法,而且程序員也易于理解。關(guān)系型數(shù)據(jù)庫(kù)使用SQL建立了一種標(biāo)準(zhǔn)的數(shù)據(jù)訪問語(yǔ)言。關(guān)系型數(shù)據(jù)庫(kù)有一個(gè)邏輯和物理形式清楚的結(jié)構(gòu),這種結(jié)構(gòu)使得應(yīng)用程序?qū)?shù)據(jù)結(jié)構(gòu)是透明的,而且在很多商業(yè)應(yīng)用程序中工作的很好。
然而,關(guān)系理論的基礎(chǔ)之一是數(shù)據(jù)和使用數(shù)據(jù)的程序能夠而且應(yīng)該是相互獨(dú)立的。這與對(duì)象技術(shù)的整個(gè)理念是不一致的。對(duì)象技術(shù)鼓勵(lì)設(shè)計(jì)者使用對(duì)象而不是表來思考數(shù)據(jù)。對(duì)象和使用對(duì)象的方法是不可能彼此分開的。
如果把汽車作為一個(gè)復(fù)雜的對(duì)象來考慮。當(dāng)你使用汽車時(shí),你使用一輛完整的汽車,作為一個(gè)東西——一個(gè)對(duì)象來使用。與汽車相聯(lián)系的有很多動(dòng)作(也就是面向?qū)ο笮g(shù)語(yǔ)中的方法)。你駕駛汽車,進(jìn)行換檔,發(fā)信號(hào),開車燈,等等。如果汽車是一個(gè)對(duì)象,這些動(dòng)作就是對(duì)象的方法,他們對(duì)汽車而言是基礎(chǔ)性的。這些動(dòng)作獨(dú)立于汽車的想法是荒唐的。當(dāng)你把你的車停在車庫(kù),你把它作為一個(gè)東西來存儲(chǔ)。而不是分別在車庫(kù)中的某些地方存放方向盤,轉(zhuǎn)換器,信號(hào)器,車燈。數(shù)據(jù)和它相對(duì)應(yīng)的處理過程也不能而且也不應(yīng)該被隔離開來。在對(duì)象數(shù)據(jù)庫(kù)中他們是不分開的。
|
|