經(jīng)常寫數(shù)據(jù)庫程序,很容易碰到類似的問題。人總是喜歡偷懶的,以前已經(jīng)寫過的代碼,我是不愿意重新再寫一次。COPY 也許是一個解決的方法。但還是有許多時候,依靠COPY很難解決的,即使解決也仍舊還有不少麻煩。 大概在二年前,小七的網(wǎng)站(ACCXP)里,我曾經(jīng)提出一個組件開發(fā)的概念。但如何去實現(xiàn)那時候心里還是很模糊的。今過這幾年的思考,我有一個思路,今天寫下來,大家看看如何。 第一步:數(shù)據(jù)庫系統(tǒng)的一般應(yīng)用窗口。應(yīng)該分為三個部分。 第一個部分:界面顯示組件。 第二個部分:業(yè)務(wù)邏輯處理組件,供第一部分調(diào)用。 第三個部分:數(shù)據(jù)查詢存儲組件。供第二、第一部分調(diào)用。 第二步:制定數(shù)據(jù)源標(biāo)準(zhǔn)。 我們只需要根據(jù)數(shù)據(jù)源標(biāo)準(zhǔn),進行界面設(shè)計就可以了。并且還可以根據(jù)同一標(biāo)準(zhǔn),設(shè)計不同的顯示界面。 同理,數(shù)據(jù)查詢存儲組件只需要根據(jù)指定的查詢條件,返回符合標(biāo)準(zhǔn)的數(shù)據(jù)即可以了。這樣子就可以消除對具體數(shù)據(jù)庫的依賴。 同樣,業(yè)務(wù)邏輯處理組件只需關(guān)心它從數(shù)據(jù)查詢存儲組件得到數(shù)據(jù)是否符合標(biāo)準(zhǔn)即可,它不用去關(guān)心數(shù)據(jù)是如何存儲的,這就把業(yè)務(wù)邏輯對表結(jié)構(gòu)的依賴所取消。 第三步:設(shè)計數(shù)據(jù)查詢存儲組件 到這里,你也許會問查詢存儲組件是如何解決數(shù)據(jù)庫依賴與表結(jié)構(gòu)依賴? 道理很簡單,先根據(jù)數(shù)據(jù)交互標(biāo)準(zhǔn),先設(shè)計出一個抽象的查詢存儲類,接著再根據(jù)這個抽象類設(shè)計ACCESS實現(xiàn)、MSSQL實現(xiàn)、或者是ORACLE實現(xiàn)。 第四步:設(shè)計業(yè)務(wù)邏輯部件與界面顯示部件。 這是很容易理解的,我就不展開說了。 關(guān)鍵點:必須小心謹慎地設(shè)計數(shù)據(jù)源、數(shù)據(jù)交互標(biāo)準(zhǔn)。 |
|站長郵箱|小黑屋|手機版|Office中國/Access中國
( 粵ICP備10043721號-1 )
GMT+8, 2025-7-13 08:01 , Processed in 0.068458 second(s), 16 queries .
Powered by Discuz! X3.3
© 2001-2017 Comsenz Inc.