問題タブ [robot-legs-problem]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Google Guiceを使用してさまざまなインターフェースをバインドするにはどうすればよいですか?
別の実装にバインドされたインターフェイスを使用して新しいモジュールを作成する必要がありますか?
Chefクラスにもインターフェースにも触れられません。私は、実行時にChefのFortuneServiceをさまざまなインターフェイスにバインドするクライアントです。
scala - Cake パターンは非シングルトン スタイルの依存関係に使用できますか?
私が遭遇した Cake パターンの例のほとんどは、依存関係をシングルトン タイプのサービスと見なしているように見えます。コンポーネントの最終アセンブリには、各タイプのインスタンスが 1 つだけ存在します。依存性注入に Cake パターンを使用する場合、おそらく異なる方法で構成された、特定のタイプの複数のインスタンスを持つ構成を作成することは可能ですか?
次のコンポーネントを検討してください。汎用 HTTP サービス:
それぞれ異なるインスタンスである可能性がある HttpService に依存する Trade & Company サービス:
Trade & Company サービスに依存するメインのアプリ コンポーネント:
TradeService が 1 つのアドレスを指す HttpService を使用し、CompanySerivce が別のアドレスを指す別の HttpService インスタンスを使用するようにアプリを接続することは可能ですか?
dependency-injection - あいまいなロボットの脚は有効ですか?
Guice FAQでは、アノテーション(種類)を使用して複数のインスタンスを区別することについて説明しています。
私の質問:注釈なしでImplをインターフェイスにバインドし、注釈付きで同じインターフェイスに別のImplをバインドできますか?基本的に、私の最初のimplは、他のimplのコンテナとして機能します。
ボーナスの質問ですが、Names.named(..)の使用は悪い形式と見なされますか?大量のアノテーションクラスの作成を避けようとしているだけで、リファクタリングできるという利点が必要でした。
java - Multibinding を使用して Guice のロボット脚の例を一般化する
この使用例は、Guice のロボット脚の例と非常によく似ていますが、「脚」の数がわからない点が異なります。したがって、ロボットの脚の例に必要な注釈を使用できません。
Guice の Multibindings 拡張機能を使用して、これらすべての「足」を java.util.Set に集めることを期待しています。
技術的には、PrivateModule では、Multibindings 拡張によって提供されるセットの要素として実装を直接公開したいと考えています。私はそれを行う方法がわかりません。
リファレンスとコード例については、ロボット脚の例を参照してください: http://code.google.com/p/google-guice/wiki/FrequentlyAskedQuestions#How_do_I_build_two_similar_but_slightly_different_trees_of_objec
これが私の正確なユースケースです:
私は次のものを持っています:
私は拡張 jar について話しているので、最初はそれらを知りません。それらがいくつ存在するかさえ知りませMyModule
ん。わかった)。j.u.ServiceLoader
MyInterface
問題は、すべてのMyInterface
実装を 1 つのセット ( MyManager
) にまとめることです。どうやってやるの?
完全にジェシーの答えに基づいた解決策:
これにより、「顧客」に PrivateModule の拡張を強制するのではなく、MyModule が Module を拡張するインターフェースである場合は、任意のモジュール実装を使用できます。
guice - guice: 複数の実装、異なるオブジェクト グラフ
guice で次のことをどのように行いますか?
XmlSerializer
インターフェイスに依存するクラスがありますXmlFormatter
。と の 2 つの実装がありXmlFormatter
ます。CompactXmlFormatter
PrettyXmlFormatter
別のクラスMyApplication
は の 2 つのインスタンスに依存しますXmlSerializer
。1 つのインスタンスを で構成し、もう 1 つのインスタンスを構成する必要がありますCompactXmlFormatter
。PrettyXmlFormatter
このようなグラフをどのように作成しますか?
2 つのインスタンスを取得したら、XmlSerializer
それらを注入するには、コンストラクターMyApplication
のパラメーターに注釈が必要であることを知っています。MyApplication
XmlFormatter
との両方にどのようにバインドするのかにもっと興味がありCompactXmlFormatter
ますPrettyXmlFormatter
。
scala - Scala のケーキ パターンを使用してロボットの脚を実装するにはどうすればよいですか?
私の開発では、ロボットの脚の拘束問題を多用しています。Guice で解決する方法は知っていますPrivateModule
が、Scala のケーキ パターンでこれを行う方法は明確ではありません。
理想的には、ブログ投稿の最後にあるジョナス・ボナーのコーヒーの例に基づいた具体的な例を使用して、これがどのように行われるかを誰かが説明できますか? おそらく、左右に設定できるウォーマーを使用して、向きとdef isRightSide
?
actionscript-3 - Robotlegs 2 の移行 - 動的ビュー
私は自分のプロジェクトで RB1 を次のように使用しました。リンケージ名を持つ GFX を外部からロードしました。私はこのようなことをしました:
メディエーターでは、それを使用してクラス
getViewComponent
に渡しました。メディエーターに注入されました。MyView
MyView
今RB2では、私は見ることができませんgetViewComponent
。また、実行時にのみクラスを取得するため、ビューをメディエーターに挿入することはできませんgetDefinitionByName
。
これを処理する方法についてアドバイスをお願いします。
ありがとうございました!