2007年8月5日 星期日

C24 理論串接實作的瓶頸(6)──Properties, Message, Log

在設計系統的時候,有幾個項目是貫穿全部功能都需要的,像是訊息、記錄以及參數等等。這些項目如果在設計的時候沒有周全的考慮,同樣會有使用時機與層次不一致的影響。

Message:在功能處理的流程裡,處理的經過與結果在必要的時機都需要回饋讓使用者知道。需要設計的有顯示訊息的機制與訊息對照表。系統可以設計一個自己專用的訊息機制,在設計的時最好以提供給其他系統使用為基準,作出通用的元件。

Log:使用時機與設計方式都與訊息雷同,是在處理經過中記錄下系統的必要內容。通常出現的時機與訊息差不多;訊息是該時間點讓使用者知道系統處在什麼狀況下與可以作什麼動作,記錄則是讓使用者能夠查詢在那個狀況下,系統內部的狀態如何,必要時可以追蹤問題的發生原因。

Properties:參數的設定應由系統統一管理,在初始化或是即將進入該段處理的時候使用參數決定處理的方式。常看到的設計是元件裡自行讀取自己用的參數檔案,以元件的立場來看封裝參數是可以理解的;但從系統的角度上來看過多的設定會讓系統的設定失去一致性。所以我會將參數的管理放在系統層級,控制元件的參數再使用Properties物件傳入。

開發系統的極致,是讓未來的開發或維護,在沒有改變設計邏輯情況下只要更改外部檔案的定義就能產生執行參數的效果,不需要再更動任何程式。通用設定如果存在於一致的層級,編輯與維護都會比較容易;更理想的是在提供的參數夠多讓系統更趨於成熟時,就可以提供外部參數檔的編輯器,甚至設計SA Tool之類的產品,在訪談時所作的記錄可以自動產生基本的框架與設計以節省大量重覆開發的時間。

沒有留言:

張貼留言