1

私の質問が一般的でないことを願っています。

私は gwt/gxt でフレームワークを作成しました。これは、開発者が事前に定義された一連のウィジェットを使用して非常に迅速に Web アプリケーションを作成するのに役立ちます。

現在、彼らは特定の顧客に非常に関連する新しい機能を持ちたいと考えており、フレームワークを拡張するのは非常に困難であることがわかりました。サーバー側でGINとGUICEを使用して、クライアント側でMVPパターンを使用しています。拡張が必要な​​クライアント コンポーネントには、データをロードするための関連サービスがサーバー上にあります。

私はすでに新しいguiceモジュールを作成し、既存のものを「バインド」(これが正しい言葉かどうかはわかりません)することを考えていましたが、開発者は完全なモジュールまたはそのサービスを書き直す必要があります。

クライアント側とサーバー側で gwt を使用してフレームワークを設計した経験のある人はいますか? はいの場合、フレームワークに顧客固有のものを拡張する簡単な可能性を提供するにはどうすればよいですか。たぶん、私が使用できる素敵なパターンがいくつかあります。

どうもありがとう

4

1 に答える 1

0

私があなたの質問を正しく理解していれば、私が今得たこのアイデアに似たことができます。

フレームワークでは、次のように、すべてのモジュールを含むモジュールを提供できます。

public class MyAPI {
    public static List<Module> MODULES = Arrays.asList(new FooModule(), new BarModule(), new OtherModule());
    public static Module getMyAPIModule() {
        return new AbstractModule() {
             protected void configure() {
                  for(Module m : MODULES) install(m);
             }
         }
    }
}

次に、アプリでインジェクターを作成するとき、またはサーブレットモジュールで a を実行するinstall(MyAPI.getMyAPIModule());と、機能します

于 2012-05-03T02:03:06.357 に答える