web-dev-qa-db-ja.com

Javaドメインが関連付けられていないパッケージ名の規則は何ですか?

SOでQ/Aが見つからないので、exactの質問に答えるので、それを投稿して、何が戻ってくるか見てください。

命名規則がJavaパッケージに当てはまる限り、それは逆ドメイン名であるはずであると理解しています:_com.whatever.stuff_で、大文字、小文字、ハイフン、キーワードの混在に関するルールを取得します、など.

Java言語仕様のセクション7.7(Unique-Package-Names)も読んだ。私が知る限り、Javaのルールは逆ドメインを使用して一意性を保証するには...そして、もしドメインがない場合は、取得してください:

You form a unique package name by first having (or belonging to an organization that has) an Internet domainname, such as Sun.com.-セクション7.7

したがって、ドメイン名のお金を払い出すことに興味がない場合、私は名前を便乗することができる会社に属していません。私が見落としている命名規則には、従わなければならない部分がありますか? ?この時点では、どんなユニークな名前を付けてもかまいませんが、何か足りないものがあるのか​​と思っていました。

注:他の開発者が使用できるようにパッケージをリリースしたいので、システムで機能するものだけではなく、可能であればもっと標準的なものを実行したくありません。

Androidタグを追加しました。JavaパッケージはAndroid =アプリケーション、Android開発者からの異なる意見があるかどうかはわかりませんでした。

40
Mike

多くのものを配布する場合は、ドメイン名を取得することをお勧めします。ただし、別の方法として、電子メールを使用することもできます。 [email protected]com.gmail.bobになります。これはドメイン名を使用するよりも一般的ではありませんが、一部ではまだ行われており、一意性を保証しています。

35
arshajii

1つの規則は、ホスティングプロバイダーのドメイン名を使用することです。

com.github.myrepositoryname
net.sf.sourceforge.myproject
com.googlecode.myproject

利点:

欠点:

  • プロバイダーを変更する場合は、パッケージ構造が古くなっているか、下位互換性のない変更を導入して、ソースを新しいプロバイダーと一致させます
27
Grundlefleck

ドメイン名は無料で持つことができます。たとえば、dyn.comは http://free.domain.name/ で 'whatever.dyndns.org'という形式の無料のドメイン名を提供しています。

5
GreyBeardedGeek

あなたが唯一のコーダーである場合、あなたはあなたの名前を使うことができます。私の名前はJannis Froeseです。

jannisfroese.projectname.stuff

または「有効な」ドメイン名を使い続けたい場合

localhost.jannisfroese.projectname.stuff

(localhostは予約済みのトップレベルドメインです)

もちろん、これはあなたの名前が十分に一意である場合にのみ機能するため、衝突が十分に起こりそうにありません。

3
Jannis Froese

プロの環境では、逆ドメインを使用するのが慣習です。自分との関連性がより高い環境では、org.projectname.packagename.*

これは慣例であり、厳格な規則ではありません。ドメインの命名スタイルは自由に使用できます。

1
Makoto