2008年4月16日 星期三

N16 設計的製程(10)──API的定義與分類

執行方法後立即傳回結果,而且在執行前後不需要額外的設定且不留下執行狀態者,我都會將之歸類為API。在這樣的定義下雖然可以把方法宣告為static但是我仍建議使用Singleton的設計,以確保將來出現變化時還擁有改變的彈性。

API可說是對於資料的常用動作,像對於String、Array、File、Collection甚至是XML Dom我都定義了Class來放置對應的API方法。雖然許多JDK的物件都已經提供基本的操作,但是還是有一些數個操作組合形成的動作,或是加強原先操作的功能與應用性等等的需要,這些製作的產出都要對應操作的物件類型放到各自的API Class。

除此之外,對於自己定義的Data Model也可以應用這樣的設計:Data Model本身只提供最基本的getter與setter,有組合性的需要時再於Data Model的上一層放置一個Data Model API來操作。把對資料的動作分成基本與組合兩層放置,這個觀念與Controller裡的Flow與Action是一致的。

沒有留言:

張貼留言