參考文檔 : [原創(chuàng)] Web表現(xiàn)層的Client端設(shè)計模式探討 這里提到的表現(xiàn)層應(yīng)當(dāng)是指包含Server端的展現(xiàn)相關(guān)的邏輯以及瀏覽器中的邏輯。在傳統(tǒng)的開發(fā)方式中表現(xiàn)層邏輯往往只涉及到Server端,而到了Client端已完全變成了HTML+CSS或XML+XSLT毫無設(shè)計模式可言。筆者認(rèn)為隨著技術(shù)的發(fā)展和AJAX的推動,我們有必要將一部分表現(xiàn)層邏輯推向?yàn)g覽器已進(jìn)一步增強(qiáng)界面的交互能力。 或許目前大家設(shè)計的WEB頁面還很少需要考慮對展現(xiàn)數(shù)據(jù)的管理。但是一旦有一天我們擁有了一套好用的UI組件庫,那時我們設(shè)計的用戶交互界面的復(fù)雜度也就會突破目前我們習(xí)慣認(rèn)為的上限。想像一個稍微有點(diǎn)復(fù)雜的場景,如果我們擁有了一個像Excel一樣的可以對任意單元進(jìn)行實(shí)時編輯的Grid組件,用戶可以對其中的數(shù)據(jù)做任意的增刪改操作,那么我們就必須要考慮一下如何將用戶所填入的數(shù)據(jù)以合理有效的方式提交回Server端了。?CS中的展現(xiàn)數(shù)據(jù)模型對象不過真的要來設(shè)計一種在表現(xiàn)層中的數(shù)據(jù)模型,還真是有點(diǎn)千頭萬縷、無從下手。所以在具體考慮如何管理這些數(shù)據(jù)之前,我們先來看一看在傳統(tǒng)的CS應(yīng)用中數(shù)據(jù)是如何進(jìn)行管理的,有沒有什么可以借鑒的東西?不約而同的,在這些開發(fā)模式中都能找到一種專用的數(shù)據(jù)模型對象,在VB中它叫ADO.RecordSet、在Delphi中它叫TDataSet、在PB中它叫DataWindow。它們都有一些共同的特點(diǎn): 1.?????? 表驅(qū)動的結(jié)構(gòu), 具有當(dāng)前記錄的概念。表驅(qū)動的設(shè)計模式是由關(guān)系型數(shù)據(jù)庫自然衍生過來的設(shè)計方式,這種設(shè)計非常有利于用戶對數(shù)據(jù)的瀏覽和編輯,也符合我們對同結(jié)構(gòu)批量數(shù)據(jù)進(jìn)行瀏覽和編輯的一般理解和習(xí)慣。
2.?????? 控件可直接與數(shù)據(jù)模型進(jìn)行綁定。
Powered by: BlogJava Copyright © BennyBao