私はPHPのバックグラウンドから来ています。過去には名前空間が不足しているため、Zend Frameworkスタイルの「パッケージ」を使用しています。たとえば、抽象クラスのPlayerと子Player_Human、Player_DumbComputer、Player_Minimaxなどがある場合、私はPlayerをメインディレクトリに配置し、その子をディレクトリ/ Player /に配置します。 Javaで似たようなことをしようとしましたが、名前の衝突がありました。私はパッケージblah.Playerとクラスblah.Playerの両方を持っています。これを避けるにはどうすればいいですか?これに関する一般的なプラクティスは何ですか?Java:パッケージを使用するための規則?
答えて
Javaのパッケージ名は常に小文字ですが、クラス名は常に大文字で始まり、ラクダの大文字小文字の区別はありません(アンダースコアなし)。だからあなたの構造は次のようになります。
- blah
|- Player.java
|- player
|- HumanPlayer.java
|- DumbComputerPlayer.java
|- MinimaxPlayer.java
はい、この例ではHumanPlayerはblah.playerとして参照されます。HumanPlayer – LudoMC
これらの**は常に** **常にそうであるべきです** **このケースの規則は実際には慣習にすぎません)。 –
Code Conventions for the JavaTM Programming Languageから:
パッケージの命名規則:
ユニークなパッケージ名の接頭辞は常にすべて小文字のASCII文字で書かれたとすべきです現在のcom、edu、gov、mil、net、org、またはISO標準3166,1981に指定されている国を識別する英語の2文字コードの1つである。
パッケージ名の後続のコンポーネントは、組織独自の内部命名規則に従って異なります。このような規則は、特定のディレクトリ名の構成要素が部門名、部門名、プロジェクト名、マシン名、またはログイン名であることを指定することがあります。
クラスの命名規則:
クラス名は大文字各内部単語の最初の文字と混合する場合には、名詞である必要があります。あなたのクラス名を簡単かつ説明的に保つようにしてください。単語全体を使用する - 頭字語や略語は避けてください(URLやHTMLなどの省略形よりははるかに広く使われていない場合を除きます)。
Javaが広く使用されていますconventions for package names。
- 1. Androidのパッケージ名規則
- 2. Struts2のstruts.xmlを避けるためにカスタムインターセプタクラスとパッケージに使用する命名規則
- 3. Javaのスコープ規則
- 4. MVPのメソッドとメンバを定義するために使用する規則
- 5. 制約特定のキー - HashMapのための規則 - Javaの
- 6. pep8の規則を使用してPythonコードを整理するためのライブラリ
- 7. 別のAndroidパッケージの命名規則
- 8. ジェネリックと規則の規則の規則
- 9. アクセシビリティーのための命名規則php
- 10. Java MVCパターンの変数宣言の規則/規則?
- 11. Python拡張パッケージ用の非公式Windowsバイナリの命名規則
- 12. Javaの命名規則を使用する必要がありますか?
- 13. メソッドを拡張するためのWCF命名規則
- 14. 商用ソフトウェアのクラッキングをより困難にするための規則
- 15. データベースからJava変数への変換時に使用する命名規則
- 16. ユニットテストのためのOsheroveの規則を使用するときにメソッドの名前を変更する方法
- 17. ドメインオブジェクトからサービスにアクセスするための規則
- 18. DDDを使用したドメインサービスとアプリケーションサービスの命名規則
- 19. mod_rewriteを使用したユーザーエージェントの書き換え規則
- 20. HTML5キャンバスを使用した不規則なイメージのドラッグアンドドロップ
- 21. Javaのオブジェクトの命名規則
- 22. Javaのinterface/class/mockClassの命名規則?
- 23. Javaパッケージ/クラスライブラリの規約?
- 24. 共通のlispパッケージ命名規則がありますか?
- 25. 列挙型のパッケージ化のためのJavaの規約はありますか?
- 26. javaでのパッケージの使用
- 27. 複数のコントローラのメソッドのためのレールの規則
- 28. チェスのビショップのための規則の実装
- 29. Railsの命名規則がために、私が見APIガイドで3アクションメーラービューファイルの命名規則
- 30. Java - メソッド注釈とともにjavadocを使用するための規約?
http://download.oracle.com/javase/tutorial/java/package/namingpkgs.html –
Javaを使い慣れていない場合は、「効果的なJava」の書籍(第2版)をブロッホ – Raedwald