2009年1月2日 星期五

T02 元件設計的產出元素

對設計的人來說,SA所產出的Interface Method就是SD的需求規格,將所有的Interface Method完成即是工作的目標。

對於每一個Interface都應該準備一個Component來負責其實作,在大多數的情況下專案完全把Component視為一個不用理會內部的黑盒子,只要外表上執行起來的功能正常即可。最常見的設計結果就是每個Component都對應為一個Class,所有的設計內容都堆放在一起;這時的結構非常地簡單。(圖上)

在我的想法裡,每個Component內部都應該依程式碼特性分為六個部分(Implementation、Flow、Action、Model、Properties、Exception),而且分開定義在不同的Interface並放置在不同的Class裡,這時與最快速的作法比較起來是一個Class對應十二個Interface與Class的差別。(圖中)

再加上貫徹同一作用的資料或程式只能存在一份的要求,每個Class都必須貫徹使用Abstract Class來放置通用程式的方法,如此一來就是一個Class對應十八個Interface、Abstract Class與Class的巨大差別。(圖下)

就算有一堆特別的好處,縱使是我也不想把一個Class可以達成的功能弄成十八個檔案,因為結構的複雜化需要更多的時間來佈置,而且執行的效能可能也是極大的問題。因此必須提供出對應的作法與工具程式來證明並不會多浪費時間,才具有基本的誘因讓人願意這麼做。

接下來,就是以實際的作法來印證我的全部想法的過程。

沒有留言:

張貼留言