プロジェクトのアルゴリズムを実装するとします。同じコードを別のプロジェクトで使用したいとします。そうするためのアプローチは何でしょうか?コードをコピーして貼り付けるだけですか?「ライブラリ」プロジェクトを作成しますか? 何?これを行う方法を説明するチュートリアルまたはサイトはありますか?
3 に答える
確かに、それをライブラリ プロジェクトに追加しますが、再利用の利点は、コードを一般化するコストと常に比較する必要があります。バグを修正したり、パフォーマンスを向上させたりしてコードを改善する場合は、そのコードを使用するすべてのプロジェクトにそれを適用するのは良いことですが、ライブラリとすべてのクライアントとの互換性を維持する必要があるため、遅くなります (少なくとも重大な変更後にビルドされるもの)。
多くの場合、はるかに複雑なソリューションを維持するよりも、ソリューションをコピーして新しいプロジェクトに適応させる方が適切です。考慮すべき非常に重要なことの 1 つは、ライブラリに対して何人のクライアントが必要かということです。それらのクライアントを個別に維持するのはどれくらいの作業になるでしょうか?
一方、一部のコードは本質的に汎用的であり、間違いなくライブラリで共有して、作業を楽にすることができます。
アルゴリズムがJavaの場合は、jarとしてビルドします。
次に、Androidプロジェクトのルートディレクトリに「libs」というフォルダを作成します。jarをそのフォルダーにコピーします。Eclipseで、->プロパティ-> Javaビルドパスに移動します。[ライブラリ]タブで、jarを追加します。
これで、コードを使用できます。
複数のプロジェクトとリンクすることもできます。
アルゴリズムがnaticeC/ C ++の場合は、http://marakana.com/s/introduction_to_ndk,1153/index.htmlに従って ください。
再利用できるほど一般的なクラス/クラスのセットがある場合、解決策はそれらを別のプロジェクトに分離することです。
IDE で、プロジェクトがビルド パスの一部として汎用プロジェクトを使用するようにします (jar を含めるよりも柔軟性があります)。
デプロイするときは、すべてのジェネリック クラスを jar にパッケージ化し、それをソリューションに含めます。その jar をクラスパスに含めることを忘れないでください。
Java では、「メイン プロジェクト」と「ライブラリ」に違いはありませんが、「ライブラリ」には通常main
メソッドが含まれていません (ただし、禁止されているわけではありません)。それらはクラスパス内のクラスです。