0

こんにちは、私は現在、Android の ui エディターのような xtext グラフィカル エディターに取り組んでいます。グラフィカル ビューでドラッグ アンド ドロップするか、テキスト エディターで手動でコーディングして、さまざまな UI コンポーネントを作成できます。いずれかの変更がドキュメントにシリアル化されます。

そこで質問です。アプリケーション全体に唯一のドキュメント ソースを提供する必要があるため、シングルトン クラスを使用しました。しかし、シングルトンの使用を避けることを提案する記事をいくつか読んだことがあるので、依存性注入によってシングルトン クラスを置き換えたいと思います。多くのクラスを介してドキュメントをパラメーターとして渡す必要があるようです。

Guice によってデータ ソース プロバイダーを自動的に挿入する方法はありますか? (Xtext は既に Guice と統合されているため、他の依存性注入フレームワークではなく、それを使用したいと考えています。)

簡単なUML図はこちら

ありがとう!

4

1 に答える 1

0

毎回新しいインスタンスを作成しない、Guice 自体でのシングルトンスコープのサポートがあります。

@Singleton
public class DatasourceProvider{
  /* everything here should be threadsafe! */
}

したがって、ここで Guice はインスタンスが 1 つしかないことを確認し、注入を要求するたびにDatasourceProvider同じインスタンスを返します。

于 2013-08-05T09:26:15.407 に答える