2

これは、通常の状況では誰の時間も割く価値のない質問の 1 つですが...

組み込みの Android ロギング フレームワークは、さまざまなデバッグ レベルのログ メッセージに個別のメソッドを使用します。android.util.Log.vしたがって、詳細、android.util.Log.e エラーなどのメソッドがあります。

現在、私はこれを中心に構築されたラッパー クラスを維持しており、基本的に各メソッドと各シグネチャを個別に実装しています。

ログが呼び出されるたびに特定の機能を追加する必要があるため、最終的にラッパーが便利になりました。ただし、これが意味することは、この機能をすべてのメソッド シグネチャに対して複製する必要があるということです。そしてもちろん、プログラミングの危険信号の 1 つは、複数のメソッドにわたってコード ブロックをカット アンド ペーストしていることに気付いたときです。

通常、これは、ロギング レベルをパラメーターとして受け取る一般的なメソッドを用意し、メソッド本体内でさまざまなandroid.util.Log呼び出しを切り替え、「beforelog」および「afterlog」機能を 1 つの場所に実装することで解決されます。

ただし、ログはアプリケーション全体のパフォーマンスに影響を与えるため、非常にデリケートであることに気付きました。呼び出しごとに異なるログ レベルを切り替えると、パフォーマンスが大幅に低下するように思えます....それともそうでしょうか? とにかく高価なログ呼び出しが実行されることを考慮してください。

私の質問は:

切り替えによって保守性が向上するが、パフォーマンスが低下する場合

切り取りと貼り付けを行うと、物事は速くなりますが、見苦しく、エラーが発生しやすくなります

両方の目的に役立つエレガントなソリューションは実際にありますか?

4

0 に答える 0