我最近使用 SmartGWT 编写了一个 Hello World 应用程序,并注意到应用程序的大小很大。就我而言,仅该应用程序就超过 600kb。
我认为这个大小是淫秽的,所以我将罪魁祸首缩小到两个核心库,ISC_Core 和 ISC_Foundation,它们的总大小为 649kb。有没有办法减少这些库的膨胀?
任何帮助,将不胜感激。
SmartGWT 不是为 Hello World 应用程序设计的,而是为复杂的企业应用程序设计的,这些应用程序与许多实体一起工作并具有许多屏幕。在该用例中,SmartGWT 应用程序的最终交付大小与使用任何其他技术的大小相当,如果不小于的话。
基本上,如果您使用享元技术处理更大规模的应用程序,您最终会得到重新创建 SmartGWT 中已有功能的应用程序代码。没有臃肿 - SmartGWT 在每字节功能的基础上非常紧凑 - 只有更多的功能。
如果你真的有一个超轻量级的用例——比如说,向一个主要由静态内容组成的网站添加少量交互性——那么 JQuery 和其他超轻量级框架就是你要走的路。许多企业混合使用 JQuery 和 SmartGWT/SmartClient,每种用于不同的目的。
正如查尔斯所说,您必须记住,您实际上是在单个 HTML 页面上构建富客户端,因此它只加载一次。您可以在登录页面上预加载库,在他输入凭据时没有人注意到它。
看看http://www.smartclient.com/docs/7.0rc2/a/b/c/go.html#group..networkPerformance
如果足迹对你来说真的很重要,你可以考虑 Ext GWT。Ext GWT 用 Java 完成了所有工作(并用 GWT 编译)。从技术上讲,它可以删除您的应用程序不依赖的代码。