我希望我的问题不是一般性的。
我在gwt/gxt中创建了一个框架,它可以帮助开发人员使用一组预先定义的小部件快速创建web应用程序。
现在,这些天来,他们希望拥有与特定客户非常相关的新功能,我发现很难扩展我的框架。我在客户端使用MVP模式,在服务器端使用GIN和GUICE。需要扩展的客户端组件在服务器上也有相关的服务来加载它们的数据。
我已经考虑过创建新的guide模块,并对现有模块进行"绑定"(不知道这个词是否正确),但开发人员必须重写整个模块或其服务。
是否有人已经在客户端和服务器端使用gwt设计框架方面有一些经验?如果是的话,我如何为我的框架提供简单的可能性来扩展特定于客户的东西。也许有一些漂亮的图案我可以用。
非常感谢
如果我理解你的问题,你可以做一些类似于我现在的想法。
在您的框架中,您可以提供一个包含所有模块的模块,如下所示:
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);
}
}
}
}
然后,在您的应用程序中,当您创建注入器时,或者在servlet模块中,您可以执行install(MyAPI.getMyAPIModule());
,它将在