2010年1月21日 星期四

Y12 設計想法彙總(2)──遞迴的一致結構

規畫好放置框架後,接下來思考的是:現在每個模組與元件都只有近似的結構與寫法,有沒有可能定義出“完全一致”的適用規格?如果定義得出來,就可以把程式碼視為一種格式化的文字檔,撰寫很多工具程式來自動處理這些檔案內容。

根據這個目標,我認為需要的就是一致的元件結構與元件間的遞迴式呼叫。

元件結構的一致性,在[D06]、[D07]、[D08]、[D09]與[D11]有詳細提到切割的六個部分:
●Implementation
 管理元件內部的小型工廠與使用窗口。元件生成後,內部Flow與Action的生成與置換都由它處理;另外每一個介面方法必定要通過這裡的管理。(整個元件的生成應由元件生產工廠模組來統一管理)
●Flow
 元件內部處理流程統一放置的類別。應依照SOP的想法定義每一個方法的實作流程,在不同應用的需求下允許使用者動態改變流程類別。
●Aciton
 操作流程分解動作統一放置的類別。流程依照SOP的想法定義,流程中的每一個步驟都定義在這裡,在不同應用的需求下允許使用者動態改變動作類別。
●Model
 定義元件專用的資料類別。每一個屬性都要同時提供getter與setter。
●Properties
 定義預設生成的Flow與Action,以及其他執行期間需要調整的參數。由Implementation讀入並保留使用。
●Exception
 每個元件要有自己的例外。介面方法內部發生無法預期或難以處理的情況時,拋出內含相關資訊的例外物件。



完美地保持只呼叫下一層的遞迴型態,代表著需要嚴謹地定義每個套件的使用關聯,並補齊每一個層次原本沒有定義的元件空隙;只要有一個例外,就會造成處理程式的邏輯判斷錯誤。當然,也必須讓處理程式知道每個層次的定義與存取位置。自動產生設計文件的記錄在[P06]、[P07]、[P08]、[P09]與[P13]。

當元件結構的一致性與從上而下的遞迴規則定義好之後,可將足以得到很多現在難以自動產生分析、統計、追溯……以及各種想像得到的程式內容應用。

沒有留言:

張貼留言