2008年3月11日 星期二

M05 系統軟體架構的層次(3)──Package內的Class結構

Package內會有一個Class來實作Package Interface,如果要把入口、流程與動作放置在同一個Class裡的話,就只有一個Class安排在Package裡,再加上我認為必要的Abstract Class就是最基本的Package內部結構。

在D06裡有張Component的內部結構圖,可以拿來作為定義Package結構的內容。只看與Package Interface有關的部分,從左邊開始正好依序對應為入口、流程與動作;這三者分開不同層次置放是為了與做事的本質對應,各自定義了Interface則是可以使用映射或是Design Pattern予以動態置換。 即使Method在Package內被拆解為入口、流程與動作三個部分,但是每個部分都是獨立存在,一樣是需要設計的。下面的例圖是UI Bean內的controller依照UI實際特性佈置的結構,最左邊是Interface,最右邊一排是Class,其餘中間的全部都是Abstract Class。在我所做的系統裡每一個Interface(不管是入口、流程、動作或Data Model)之下的Class全都是作出這樣的設計。


沒有留言:

張貼留言