2016-07-28 123 views
1

我學習Java和發現在教程中使用,以及對Oracle's website的命名約定,com.etc.project.program我是否應該遵循Java包的命名約定?

難道我真的要遵守這個習慣?

以下有哪些優缺點?

+1

如果您想爲其他用戶提供公共API,則最好遵循這些約定 – Andrew

+2

可能的[Java包命名約定]重複(http://stackoverflow.com/questions/7411717/java-package-naming-conventions ) – Tom

回答

4

公約是不是強制性的,但幫助

  • 你創建bettter代碼和
  • 別人的理解更容易:

根據wikipedia

理由使用命名約定(反對d,以允許程序員選擇的任何字符序列),包括以下內容:

  • 減少閱讀和理解源代碼
  • ,使代碼所需的工作量點評專注於更重要的問題不是爭論的語法和命名標準。
  • 使代碼質量審查工具能夠將其報告主要集中在除語法和樣式首選項以外的重要問題。
  • 增強源代碼外觀(例如,通過不允許超長名稱或不明確的縮寫)。
+0

謝謝@Jordi,我不知道我錯過了「其他人」。爲了解釋名字,必須有一個標準的標準。 – dhirwan

0

不,你不必遵循任何約定,你可以寫的一切,編譯器允許。

但是,遵循一些約定會使其他人(以及未來自己)更容易理解您的代碼。

0

正如你在你的問題說本身,它只是一個「公約」

公約一種方式,其中一些通常完成。

這只是一個約定。如果你想跟隨它,取決於你。 但總是建議您遵循這些慣例。在Java中

NAME   CONVENTION 
class name  should start with uppercase letter and be a noun e.g. String, Color, Button, System, Thread etc. 
interface name should start with uppercase letter and be an adjective e.g. Runnable, Remote, ActionListener etc. 
method name  should start with lowercase letter and be a verb e.g. actionPerformed(), main(), print(), println() etc. 
variable name should start with lowercase letter e.g. firstName, orderNumber etc. 
package name should be in lowercase letter e.g. java, lang, sql, util etc. 
constants name should be in uppercase letter. e.g. RED, YELLOW, MAX_PRIORITY etc. 
0

包命名約定


命名約定只是約定。你可以忽略它們,但你不應該這樣做。

約定有助於防止命名衝突,並使您的代碼更易被其他人閱讀。

一旦你開始與其他開發商合作,遵循約定會使你和他們的工作更容易。

而且,他們真的並不難效仿。

0

。它有講這個herehere其他StackOverflow的頁面。

但如果你還沒有看到他們,讓我給你一些原因和參考:

如果你只是在做個人項目中沒人會使用 代碼,那麼你就可以補包名稱,你喜歡。不要組成 以com開頭的東西。或網。或者其他頂級域名 雖然,因爲這將意味着你自己的域名(使用com.john爲您的包名即 只是因爲你的名字恰好 是約翰是不是一個好主意)。

如果您要將代碼提供給任何其他人,則應使用全球唯一的軟件包名稱,該名稱根據Java約定 表示您應該註冊並使用域名。

+0

傾向於將此問題標記爲重複,而不是從那裏複製答案。 – Tom

+0

好的,會這樣做。不管怎樣,謝謝 –

+0

感謝@YoungMillie,得到了它,我真的搜查了同樣的問題,但並沒有達到正確的答案。 – dhirwan