2010-12-27 14 views
0

プラットフォームからSDKを使用している2つのプラグインpluginAとpluginBがあります。pluginAとpluginBは互いにメソッドにアクセスできず、pluginAとpluginB間の通信はプラグイン間で静的メソッドにアクセスする

pluginAにはユーティリティクラスutilAがあり、静的メソッドgetMethod()がプラグインBで使用されます。プラグインB自体にもあるクラスのオブジェクトを返します。私は、このコミュニケーションを行うことができるように、プラットフォームCで任意のインターフェイス/ファクトリクラスを作成することができます。

誰かがこの問題に取り組む方法を提案できますか?

答えて

1

これは工場設計パターンです。ファクトリは、SDKからすべての「プラグイン」にアクセスできるリソースでなければならず、SDKはプラグインが工場のサプライヤになるように(おそらく設定ファイルや注釈で)決定する必要があります。

もう1つのデザイン思想。私はFactoryをFactoryオブジェクトの出力として使うことを好みます。そうすれば、1つのクラスが好きなようにインターフェイスを実装できます。作成されたときでも、ClassLoaderによってロードされたときでも、他のすべてのクラスはそのファクトリを使用できます。これは、テストやランタイムで頭痛の束を保存することがあります。

+0

Thanx。これはうまくいった。 – Himz

関連する問題