執行方法後立即傳回結果,而且在執行前後不需要額外的設定且不留下執行狀態者,我都會將之歸類為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是一致的。
沒有留言:
張貼留言