8

Transfuseを使用している人がいるかどうか、およびAndroid Annotationsとの違いを知りたいです。それぞれの長所と短所、およびこれら 2 つ以外のオプションがあるかどうかを意味します。

ありがとう。

4

1 に答える 1

13

私はライブラリを書いたので数えないかもしれませんが、私は Transfuse のアクティブなユーザーです :-)

Transfuse の観点からの比較は次のとおりです。

Transfuse と Android アノテーションは、Android のボイラープレートと複雑さを軽減するという同じ目標を共有しています。Transfuse と Android アノテーションはどちらも、コンパイル時にコードを生成するためにほぼ同じ手法を使用するため、非常にパフォーマンスが高くなります。実際、AA は Transfuse の多くのインスピレーションの 1 つでした。

Android Annotations は、アノテーション付きクラスに関連付けられたクラス拡張機能にコードを導入することで、ボイラープレートと戦います。導入されたコードは、生成されたソースの Class_ ファイルにあります。Android Annotations には、軽い依存性注入メカニズム、REST クライアント ジェネレーター、さまざまなアクティビティ/コンテキスト拡張機能など、さまざまな機能が含まれています。

一方、Transfuse は、依存性注入、POJO コンポーネント、マニフェスト管理を通じて、エンタープライズ Java ライブラリから借用した他のアイデアの中で、この目標にアプローチします。たとえば、Transfuse アクティビティは android.app.Activity を拡張しません。代わりに、Annotation を介してアクティビティに機能を追加します。Transfuse は、Annotation を使用して生成されたコードを結び付けます。Transfuse は JSR330 にも準拠しています。つまり、Guice (Roboguice) や Dagger に匹敵するフル機能の IOC/DI エンジンです。これにより、開発者は、結果のコードを維持する必要なく、アプリケーションの背後でオブジェクト グラフを接続するための多くの機能を利用できます。最後に、私のお気に入りの機能の 1 つである Transfuse が AndroidManifest.xml ファイルの書き込みを管理するため、コンポーネントを登録することを覚えておく必要はありません。

私はこの比較の質問をかなりの量、または RoboGuice や Dagger と比較してどのように尋ねられます. ライブラリ間の重要な違いを強調するために、おそらく比較マトリックスを作成する必要があります。

于 2013-07-14T22:39:53.687 に答える