2015年10月26日 星期一

Package naming

package主要的目的是避免相同名稱的Class發生衝突,因此可以避免開發上麻煩
不過,基本上大部分的人都是重視類別、方法、變數上的命名,不過也是因為套件的命名
其實也蠻少會做什麼特別的變動 

基本上,我以前也是亂命名套件的名稱,比如tw.bill.xxx
但,現在覺得tw的意思不大,如果是公司的話應該用com,組織的話就org,個人的話…
有想到pri,但如果是要推個人做的產品的話,目前還沒有想到好的單字,可能就還是先用pri吧,而第二個單字,一般就是公司名,或是省略,直接接產品名
再來呢,就會區分功能區塊了,而功能區塊下,
又會根據其特性,再進行細分,基本上就是這樣啦

另外,至於interface和實作是否要分開,個人會比較覺得分開會比較好,而實作再跟據其對應的對像進行package的分類,不過,這也只是我比較常遇到的清況,
也可以根據功能進行package區分就好,然後Interface和實作可以放在一起,看那種方式最適合實際情況吧

另一個情況要思考的是,關於繼承關系的package分類,這個可以參考一下java api的分類方式,可以看以我個人最常用的ArrayList和其父介面Collection,
嗯…都放在同一個package中,或許這是一個最簡單的作法
思考過多,反而會造成使用上的困難,但這是對外公開的介面,實際上或許package內部,也隱藏著不為人知的祕密吧XD

沒有留言:

張貼留言