2008年6月3日 星期二

Q11 努力的方向(3)──規定元件內部軟體結構

每個Package的結構都會以自己經驗累積的一個Interface加六個Class為主。Interface是提供給外部操作的功能規格,也就是這個Package所應該實現的所有功能;六個Class則是以開發元件時切割的部分為基準。

在今年進行的專案裡,我已經準備好基本型態的Component,提供最根本的實作。另外還準備了一個小工具,只需要輸入Package Name、Component Name、Super Component Package Name、Super Component Name並選取要產生哪些部分,就可以自動產生所有已經命名好且建立好繼承與實作關係的所有檔案。

Package內部的適當切割有助於讓不同的人快速地看懂程式,這是因為各種相關的東西都集中在對應的部分,對外所使用的都是其他Package Interface。Component的首要是定義功能的Interface,對需要分層負責的各個部份都宣告Interface;Component內部則以Implementation作為入口,再分散到各個部分內部去處理。

雖然Component只需注重Interface的實現,內部怎麼去完成的可以不用在意,但是所有的Component都維持同樣的生成方式、同樣的分工模式與想法時,除了作法可以統一外,還可以根據一致的風格完成更進一步的目標與對應工具。(Component產生工具便是一例)

沒有留言:

張貼留言