2

Android開発を学ぶために今日始めたばかりですが、Helperクラス、またはグローバルにロードされる関数のコレクションを定義する方法に関する情報を見つけることができず、作成したアクティビティでそれらを使用できます.

私が計画しているのは、(少なくとも今のところ) ほぼすべてのアクティビティで使用される 2 つの関数を作成することであり、すべてのアクティビティで同じ関数を定義するのは面倒です。

上記にアプローチする適切な方法はどれですか?

4

2 に答える 2

2

この目的のためにグローバル アプリケーション クラスに関数を配置しないでください。一般に、機能を共有している場合は、それを抽象化してコードを配置します。

  • 静的メソッド
  • 別のパッケージ
  • アプリをリンクする機能を実装するライブラリ
  • コンテンツ プロバイダー

この機能をクラスに明示的に実装しないでください。Applicationアプリケーションを拡張する用途はあります、そうするとコード臭が発生し、初心者によくあるアンチパターンになります。アプリで共有される機能の束が必要な場合は、ライブラリが最適なソリューションです (別のパッケージに分離する単なるコードであっても)。これにより、再利用が促進され、コードをより明確にセグメント化してテストできるようになります。

Java では、このための形式のクラスまたはパッケージのいずれかを持つのが一般的*.utilです。

(Ruby は Java よりもはるかにメタプログラミング指向であるため、通常は異なるトリックを使用するため、これが標準である Rails の世界のようなものから来ていると思います。)

于 2013-02-06T16:40:59.617 に答える
2

これは、Java の静的メソッドになります。

Java 静的メソッド

クラスヘルパーでは、

public static void DoSomething(){
}

どのクラスからでもアクセスできます。

例:

Helper.MyFunction();
于 2013-02-06T16:32:51.150 に答える