47

私の正確な質問に答えるSOに関するQ/Aが見つからないので、投稿して何が返ってくるか見てみようと思います。

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

したがって、ドメイン名にお金を払うことに興味がない場合、名前を便乗できる会社に属していない場合、従うべき命名規則の欠落している部分はありますか? この時点で、私が好きなユニークな名前を付けることができると思っていますが、何か欠けているのではないかと思っていました.

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

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

4

5 に答える 5

42

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

于 2012-09-21T18:06:25.600 に答える
40

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

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

利点:

  • ホスティング プロバイダーには同じ名前の 2 つのプロジェクトがないため、パッケージの名前空間は一意になります。
  • それはホストのコストと同じくらい高価であり、その多くは無料です
  • プロジェクトを Maven Central に入れたい場合、Sonatype の要件を満たす簡単な方法になる可能性があります。

欠点:

  • プロバイダーを変更する場合は、パッケージ構造が古くなっているか、下位互換性のない変更を導入して、ソースを新しいプロバイダーと一致させます。
于 2012-09-21T18:09:11.667 に答える
5

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

于 2012-09-21T18:09:40.307 に答える
4

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

jannisfroese.projectname.stuff

または、「有効な」ドメイン名を使用したい場合

localhost.jannisfroese.projectname.stuff

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

もちろん、これは名前が十分に一意である場合にのみ機能するため、衝突が発生する可能性は十分にありません

于 2012-09-21T18:19:03.977 に答える
1

プロの環境では、逆ドメインを使用するのが慣例です。より自分自身に関連する環境では、 を使用できますorg.projectname.packagename.*

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

于 2012-09-21T18:08:31.527 に答える