0

我对 GWT 模块的理解是它是一个“可重用单元”。

我对an的理解EntryPoint是,它是一个与客户端浏览器交互的模块。因此,我认为EntryPoint一个“可执行 JAR”是一种“可执行 JAR”,而一个模块则是一个库 JAR 或 DLL。

我对片段的理解是,它是模块的子组件,用于延迟绑定和代码拆分。

因此,首先,如果我对这些断言中的任何一个不正确,请首先纠正我或为我澄清事情!

如果我是正确的,那么很明显您根据需要将模块分解为片段。您编写模块,以各种方式对其进行测试,查看soyc编译器报告,如果发现瓶颈,则开始根据需要进行分段和代码拆分,是吗?

但是您如何将应用程序分解为模块和入口点?!?同样,我确信这一切都归结为需要并且是特定于应用程序的。我刚刚阅读了这篇关于构建 GWT 应用程序的文章,虽然它很有帮助,但它仍然没有提供任何将应用程序分解为模块/入口点的试金石或指导方针。

我已经计划将我的应用程序拆分为两个模块:aWebModuleAppModule. 这WebModule将是应用程序的“公共”部分(网站,如果你愿意的话),并且AppModule将在用户成功登录后下载(我这样做是出于安全目的)。

但除此之外,我不确定如何将我AppModule的模块分解为其他模块,以及如何确定这些模块是否需要入口点。所以我问:如果你对一个模块进行分段以规避代码下载的网络延迟问题,你什么时候/为什么要模块化一个应用程序,什么时候模块需要一个入口点?

4

2 回答 2

0

EntryPoint不是一个单独的模块。它是模块的一部分,并具有将在应用程序启动时调用的功能。

于 2012-10-28T12:04:17.393 回答
0

模块的重点是对逻辑功能进行分组,以便您可以在不同项目之间共享代码。没有其他的。GWT 已经附带了一堆模块(HTTP、Activity、Places、Debug)。如果您决定像这样对它进行分组,您的应用程序中可能有一个 COMMENT 或 USER 模块。

只应在需要时使用代码分割。您只能通过GWT.runAsync(). 我建议您仅在您的应用程序加载缓慢时才执行此步骤。

于 2012-10-28T14:22:23.793 回答