問題タブ [pluggable]

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.

0 投票する
1 に答える
787 参照

nservicebus - メッセージ ハンドラー内の NServiceBus 子コンテナーのハンドルを取得するにはどうすればよいですか?

NServiceBus 4.0.3、StructureMap 2.6.4.0、NHibernate を使用しています

エンドポイントを次のように構成しました。

プラグイン ファミリがあり、実行時にオブジェクトのインスタンスを取得したい (コンストラクタ インジェクションを使用できない)。

StructureMap の世界では、以下を使用して実行できます。

ObjectFactory.GetNamedInstance<ISomething>("familyName");

しかし、NServiceBus を structuremap で使用している場合、メッセージごとにネストされたコンテナーが取得されます。
オブジェクトのインスタンスを取得したい場合、上記のコードは親コンテナーからのインスタンスのみを提供します。ObjectFactory は初期化されていないため、インスタンスを取得しません。

コンテナーで ObjectFactory を初期化するとイベントが発生します。これは静的ラッパーであるため、メッセージごとに使用しても安全ではありません。

では、プラグイン ファミリーを使用できるように、指定されたメッセージの子コンテナーをどのように処理すればよいでしょうか?

0 投票する
1 に答える
281 参照

c# - コードを含む .NET サテライト アセンブリ

比較的複雑な .NET アプリケーションのローカライズに取り組んでいます。要件は、UI を変換し、日付と数値の形式を切り替えるだけでなく、特定のロケール (地方の課税規則など) に対して異なるアルゴリズムを使用することです。

これを .NET で実装する簡単な方法はありますか (リソースのサテライト アセンブリなど)?

0 投票する
1 に答える
1765 参照

hadoop - Hadoop プラグインまたはパッチをインストールする方法は?

https://issues.apache.org/jira/browse/HDFS-385にあるような Hadoop パッチのインストール方法を知っている人はいますか?

プラグ可能なインターフェイスが機能するように、元のコードを何をどのようにオーバーライドすればよいかわかりません。

誰かヒントをくれませんか?

ありがとう

0 投票する
1 に答える
258 参照

design-patterns - 構成ファイルとプラグイン可能なコードの両方がプラグイン アーキテクチャの答えですか?

私は考え続けます。わかりました、なぜプラグ可能にする必要があるのか​​ (または、少なくとも拡張して、プログラムに追加の寿命/機能を与えるという概念)が必要な理由を理解しています。また、プラグインがコードでどのように機能するか、その方法も理解しています。

私が理解できないのは、xml ファイルやその他の構成ファイルを使用しない理由です。構成ファイルを使用して、「プラグ可能な」アーキテクチャを作成したり、アプリケーションの寿命を延ばしたりすることは可能ですか? それはあなたのアプリケーションをプラグ可能にしますか?

それとも、プラグイン可能とは、アプリケーションを拡張するコードを記述できるアプリケーションだけを意味するのでしょうか?

アプリケーションに必要なものだけに依存しますか?

0 投票する
1 に答える
298 参照

design-patterns - プログラマーがアルゴリズムやボードのピースを変更できる三目並べゲームを書いた場合、これはプラグイン可能なアーキテクチャですか?

私が三目並べゲームを作成し、ミニマックスを使用して人間/コンピューターの対戦相手をプレイするとします。他の誰かが、コードで表現された新しい意思決定のアイデアを持ってきました。元のコードを変更せずに、彼が私の在庫のアルゴリズムの代わりにそのアルゴリズムを使用する方法を作成した場合、それは私がプラグイン可能なソフトウェアを作成したことを意味しますか (その新しい検索ルーチンはプラグインではありませんか)? また、誰かがピースを変更する方法を書くことができるようにしたらどうなりますか? それはスキニングですか、プラガブルですか、またはその両方ですか?

ありがとう。

0 投票する
1 に答える
51 参照

java - 共有パブリッシャーとロックに関する GlazedLists の PluggableList 要件に対処する方法

ビーンズバインディングを広く使用するJavaプロジェクトでGlazedListsの使用を開始しました(MVVMパターン)。

PluggableList を使用すると、ソース リストをテーブルにバインドし、実行時にソース リストを変更できます。これを実現するには、すべてのソース リストが同じ ListEventPublisher と ReadWriteLock を共有する必要があります。これは、PlugableList がそのソースとロックとプラブリッシャーを共有する必要があるためです。以下の疑似コードに示すように、静的パブリッシャーを作成し、潜在的なソース リストを所有するクラスをロックし、それらの静的値を使用して、クラスのすべてのインスタンス化と PluggableList でリストを作成することによってこれを実現します。

これには2つの懸念があります。

(1) UiController のコンポーネントの特定の要件のため、モデルで決定を下す必要があります。これは MVVM パターンに違反しているようです。

(2) リストが非常に多く、頻繁にアクセスされる場合、リストはすべて同じロックを共有するため、共有ロックはリストのパフォーマンスに影響を与える可能性があります。それ以外の場合、これらのリストのそれぞれは、互いに気にせずに独立して動作できる必要があります。

私はこれについて間違っていますか?ModelClass が特別な UiControllerClass 要件について知る必要がなく、潜在的なパフォーマンス ヒットなしで PluggableLists を機能させるより良い方法はありますか?

0 投票する
0 に答える
513 参照

vb.net - Web ブラウザーからアプリにコマンドを送信する

ユーザーのコンピューターから Web サービスにデータのストリームを送信できるようにしたいと考えています。それはそれほど難しいことではありません。ユーザーの Windows コンピューターに常駐する dot-net で記述されたアプリケーションを使用します。

ただし、注意が必要なのは、ユーザーがブラウザーで開いている Web ページのボタンまたはリンクをクリックしたときにのみ、データのストリームを (アプリによって) 送信する必要があることです。アプリ自体はシステム トレイで最小化されます。そして、彼はその Web ページの停止ボタン (またはリンク) をクリックして、ストリームを停止できるはずです..

したがって、[a href='alert:"Hello World" '] のようなリンクをページに配置できるというスタックオーバーフローに関する情報を見つけました。アプリケーションを登録すると (この例では、アプリは呼び出されます) "alert.exe") をレジストリに追加し、ユーザーがリンクをクリックすると、アプリケーションが起動し、パラメーターとして "Hello World" を受け取ります。

とにかく、私の場合は合併症があります。アプリケーションの新しいインスタンスを開始することなく、いつデータの送信を開始し、いつデータの送信を停止するかをアプリケーションに伝えることができるようにしたいと考えています。ユーザーが [開始] をクリックし、アプリが既に開いている場合は、もう一度開きたくありません。「送信を開始する」というメッセージが表示され、ユーザーが停止ボタン (またはリンク) をクリックして「送信を停止する」というメッセージが表示されます。ユーザーはセッション中にこれらの Web ページ ボタンを数回クリックする可能性があり、そのたびにプログラムを閉じて再度開くのは望ましくありません。

いくつか質問があります:

  1. 私は正しいアプローチを取っていますか?「プラグイン」の方が良いでしょうか?

  2. 正しいアプローチを取っている場合、Web ページからアプリケーションにコマンドを送信する方法はありますか?

  3. アプリでユーザー コンピューターのレジストリを変更しても安全ですか?

  4. もしそうなら、それを行うための一連のコマンドはありますか?

  5. レジストリは Windows 7、Windows 8 などでサポートされていますか? Mac ではサポートされていないことはわかっています。

前もって感謝します。

LL

PS (ブラウザーからのアプリの起動に関する情報は、http: //msdn.microsoft.com/en-us/library/ie/aa767914%28v=vs.85%29.aspxにありました)。