2010年1月22日 星期五

Y13 設計想法彙總(3)──唯一的資料物件

在執行的過程中模組與元件都各自操作自己的資料物件,在設計時會根據不同的需要定義存取方法,不過我想做的是在各自的資料物件包裝內全部使用一種實作──基本Data Model。

基本Data Model向下可以使用不同的Parser對應各多種儲存檔案:目前實作過XML、properties、text、CSV、excel,計畫再對應html、ResultSet、Model(使用XML字串描述而生成定義的物件種類)以符合更多樣化的運用;Parser應該提供這幾個基本功能:讀檔、存檔、傳入字串與傳出字串。再者就是能夠以對應基本Data Model的單一編輯器達到通用的目的。



向上則可以被繼承後依照個別的需要定義存取方法,宣告為元件結構裡的Model、Properties與Exception。另外,為了區分每種資訊被存取的差別,會要求必須擁有獨自的getter與setter,不得使用通用型的方法。

在執行期間只要更換Properties的內容(或是重新設置),就能夠改變元件內部的行為;不同模組或元件之間的資料傳遞也只需要取得基本Data Model字串再直接傳到另一處而變得簡單。如果需要當時資料物件的全部內容,經由Parser可以轉換為各種不同格式的字串寫在log裡,事後可輕易地回復為該時間點的執行資料進行測試。

在公司曾實作過一版最早版本,幾位用過的同事都覺得方便且容易操作,自己也滿意這樣的設計結果。雖然基本型態的欄位資料都必須使用String型態存放,但是在不甚計較容量與速度的執行環境下卻也沒有什麼缺陷。

與基本Data Model想法有關的文章是:[C22]、[E06]、[E07]、[E08]、[E09]、[E10]、[E11]與[E12]。

沒有留言:

張貼留言