我最近使用SmartGWT编写了一个Hello World应用程序,并注意到应用程序的大小非常大。在我的情况下,它仅为该应用程序超过600kb。
我认为这个大小是淫秽的所以我把罪魁祸首缩小到两个核心库,ISC_Core和ISC_Foundation,它们的总大小为649kb。反正有没有减少这些库的膨胀?
任何帮助都将不胜感激。
答案 0 :(得分:5)
SmartGWT不是为Hello World应用程序设计的,而是针对可与大量实体一起使用并具有大量屏幕的复杂企业应用程序。在该用例中,SmartGWT应用程序的最终交付大小(如果不小于您使用任何其他技术的大小)。
基本上,如果您使用flyweight技术处理大规模应用程序,最终会得到重新创建SmartGWT中已有功能的应用程序代码。没有膨胀 - SmartGWT在每个字节的基础上非常紧凑 - 只有更多的功能。
如果你真的有一个超轻量级的用例 - 例如,为一个主要由静态内容组成的网站添加次要的交互性 - 那么JQuery和其他超轻量级框架就是可行的方法。许多企业混合使用JQuery和SmartGWT / SmartClient,每种都用于不同的目的。
答案 1 :(得分:2)
不幸的是你不能,因为SmartGWT已经stated here,大小将保持不变甚至增加。我尝试过SmartGWT,但由于这个问题和第三方框架集成问题,我选择了另一个框架。
他们问题的一个可能解决方案是引入ZK中存在的动态JavaScript加载器。我在我的企业项目中使用它并且它运行良好。
现在对于较小的应用程序,我倾向于直接使用jQuery。
答案 2 :(得分:1)
正如Charles所说,你必须记住,你实际上是在一个HTML页面上构建一个富客户端,所以它只加载了一次。您可以在登录页面上预加载库,在输入凭据时没有人注意到它。
查看http://www.smartclient.com/docs/7.0rc2/a/b/c/go.html#group..networkPerformance
答案 3 :(得分:-1)
如果足迹对您来说非常重要,您可以考虑使用Ext GWT。 Ext GWT使用Java完成所有操作(并使用GWT编译)。它技术上可以删除您的应用程序不依赖的代码。