2013-03-15 81 views
1

我正在構建一個獨立的Java應用程序。main()方法的包約定Java類

因此,我必須用main()方法使用該類。因爲這是一切開始執行類,我通常放在封裝結構

com.<company-name>.<project-name>.init 
com.<company-name>.<project-name>.main 
com.<company-name>.<project-name>.server 
com.<company-name>.<project-name>.initializer 

我的問題是一個,

  • 高於包名特定目的說的嗎?如果沒有,那麼任何建議?
  • 是否有標準命名呢?
+0

看起來非常好。 – 2013-03-15 07:47:58

回答

4

當我創建一個帶有主類的項目時,我通常將它放在應用程序「com.acmeglobal.killerapplication」的最頂層包中,並給它一個簡單的名稱,如「App」,「Main」或「Start」。

我儘量保持我的主班級儘可能小;它只會引導應用程序。如果對應用程序參數的解析甚至是微不足道的,我甚至會爲此創建一個單獨的類。

在我們推薦的軟件包名稱中,我更喜歡'main',然後'init'或'initialization',儘管我認爲初始化不應該成爲主類的問題。名爲「服務器」的軟件包似乎誤導了我,因爲它暗示還有一個客戶端,我認爲你並不打算這麼做。

+1

+1我總是使用'Launcher'作爲主類:) – 2013-03-17 04:47:14

+0

啓動器是一個很好,清晰的名字。我會牢記這一點。 – 2013-03-17 19:27:43

2

是否爲給定目的的包名稱有意義?如果不是那麼 有什麼建議嗎?

我認爲這是有道理的。如果main只包含Main類,那麼合併main和init對我來說也很好。

是否有標準的命名呢?

0

你建議的包裝看起來不錯,但只是要徹底,他們應該與反向域名前綴。因此,如果公司Acme具有域www.acmeglobal.com,則其包裝結構將以com.acmeglobal而不是com.acme作爲前綴。

遵守此標準可降低開發人員創建碰撞類的可能性。

0

定義包結構是供您自己使用的。如果你把你的代碼放在正確的包裝結構中,那麼它將有助於將來的維護並提高可讀性。