1

それは私だけですか、それともJavaパッケージの命名規則のTLDはかなり無関係ですか? com.example.packageつまり、TLD なしでとの間で名前空間の競合があった場合org.example.package、TLD を使用するととにかく混乱します。名前空間の衝突のトレードオフの混乱はなぜですか? 確かに、コンパイラがエラー/警告を吐き出すほうが、誰かが間違ったパッケージをインポートしたプログラムをコンパイルしようとして陽気に跳ね回るよりはましでしょうか?

コンベンションでちょうど2セント。率直に言って、org. とコム。とにかく、同じ名前の 2 つの Java パッケージが、同じドメインで異なる tld を持つ 2 つの企業によって作成される可能性はほとんどないためです。

4

7 に答える 7

1

com.またはがパッケージ名にとって重要であるということではなく、org.「会社のドメイン名を使用する」というのは、簡単な経験則です。

于 2011-03-04T19:57:47.530 に答える
1

重要な場合もありますが、ほとんどの場合、実際のエンジニアリング上の理由よりも名声に関するものです。それは、絵の隅にある「私がこれを作った」という画家の署名と比較することができ、懸念や意見を表明するたびに注目を集めるものです。

この例として、Apache Software Foundation がJCPを辞任したとき、彼らが使用しているすべての外部サードパーティ ライブラリにドメインが含まれていたため、誰もがこれが自分たちの仕事に直接影響を与えることをorg.apache.*知っていました。最終的に彼らに影響を与えるので、発表を注意深くフォローし始めてください。

同様に、会社の評判を利用してライブラリを宣伝することもできます。ランダムなパーティーのコレクションライブラリのセットを宣伝するとしたら、下にあるcommon.collectものと下にあるもの、どちらが良いとcom.google.common.collect思いますか?

ドメイン部分をパッケージに追加することは、実際の実践とはほとんど関係がありません。それは、責任を負い、自分が何であるか、何をしているかを誇りに思うことです。オープンであること、共有すること、コミュニティの一員であること、世界中の約 1,300 万人のソフトウェア開発者の中にあなたがいることです。

于 2011-03-04T20:12:21.193 に答える
0

パッケージがライブラリではない場合(または自社のライブラリのみである場合)、パッケージが出てこないため、パッケージプロトコルに従う必要はありません。実際、スタンドアロンアプリでは、1つの短いパッケージ名を使用し、その中にすべてを貼り付けています。これにより、同じパッケージ宣言を使用している場合に、別々のプログラムから一般的に使用されるファイルの差分またはチェックサムが簡単になります。これが私が投稿した質問です:一般的なJavaパッケージ名

于 2011-03-04T19:59:06.650 に答える
0

ソフトウェアをコーディングするときは無視しますが、TLD はパッケージを一意にするのに役立ちます。

于 2011-03-04T19:54:35.850 に答える
0

あなたが言ったように、それは単なる慣習です。完璧になるようには設計されていません。ドメインは所有者が変わる可能性があり、これにより衝突も発生します。

于 2011-03-04T19:55:38.173 に答える
0

パッケージ名について質問したところ、Jon Skeet (彼が誰であれ) から良いコメントがありました。

from: Java パッケージ内のハイフン付きの会社名

正直に言うと、Java が慣習に関してこの道をたどっていなかったらよかったのにと思います。「com」または「org」と呼ばれるディレクトリが、単一のメンバー (より意味のある名前のサブディレクトリ) でいくつ存在するのだろうか。

于 2011-03-04T21:19:27.210 に答える