2009年3月4日 星期三

U01 根本的建立(4)──建立基本函式庫

在設計的時候會需要很底層的動作(像String與文字檔間的讀寫),那些動作僅有處理的行為而不會保留任何狀態,這些都會被歸類為工具程式(Utility)。每個底層動作都會被定義為一個Method,所有Method再根據其特性放到不同的Class存放。

Utility裡的Method通常被宣告為final static來強調其不可被改變且只存在一份的特性,不過static是一種“固定”,因此會將Utitlity Class用singleton方式建立用以保持僅有一份。提供外部呼叫的Method則會宣告為public final形式,內部抽取出來的Method則依原則宣告成protected final。Utitlity Class不需要定義Interface,每個public final的Method都是提供使用的。

設計Method時應採用Flow、Action的佈置方式,所有程式碼的風格才會一致,同時程式碼分析工具的判斷規則才會相同而不需改寫太多。註解的內容與結構的一致也是必要的,這樣才能保證其他的工具能夠套用。

所有的Utility Class都放在一個固定的Package之下,基於需要而改寫的JDK Class就放在另一個Package下作為集中處。在Utitliy Package之下的全部程式都放置在utility project,以便將來產生utitliy jar file所用。倘使在設計元件時發現某些動作會在元件中共用,但又只侷限在某個範圍內的元件才會使用,則應該放置在那個層級的Project裡,這樣才符合它的意義。

沒有留言:

張貼留言