1

Android で使用する Android ライブラリを作成しています。これは、Eclipse のような IDE と Ant のようなビルド プロセスを意味します。

ライブラリの性質は、異なるレベルの抽象化を表す 2 つの異なる部分 (「上位」と「下位」としましょう) を持つことです。

この質問の目的のために、ある部分で別の部分からメソッドを呼び出す必要があるが、それらのメソッドをライブラリ ユーザーから隠しておきたいと仮定します。私は通常の参照を精査しましたが、それらはすべて、パッケージ名の規則とスコープ規則を説明するところで止まります。これは役に立ちましたが、SOでこれに答えるものを見つけることができませんでした。

当面の解決策は、すべてを 1 つのパッケージにまとめ、それらのメソッドをパッケージ プライベートにすることです。ただし、保守性、明確さ、および1 つのフォルダーに 100 個のファイルがないという理由から、パーツを別のフォルダーに分割することをお勧めします。

明らかな分割ポイントは、パッケージ (「ウィブル」としましょう)com.me.wibble.uppercom.me.wibble.lowerパッケージ/フォルダーに分割することですが、相互接続する方法が望ましくないほど公開されます。軽減策として、@hide を使用して javadoc から非表示にすることができます。

もう 1 つの考えは、トップ レベルでパーツを分割し、classic/main/testフォルダーの代わりに/upper/lowerおよびすべてのパーツが同じ名前空間/testを共有できるかどうかです。com.me.wibbleEclipseがそれに対処するかどうか、またはどのように対処するかはわかりません。

これを行う従来の方法はありますか、それとも行われていないだけですか? 方法がある場合、長所と短所は何ですか?

4

1 に答える 1