在Google IO Talk上,有人提到小部件会使应用程序运行缓慢,您应该不惜一切代价避免它们。但是我想使用gwt-bootstrap小部件库。这会给我的ui.xml带来很多小部件的污染。
我之所以使用这个库而不是标准的gwt bootstrap.js文件,是因为我不想包含库,也不想使用引导的自定义选项。原因可能是初始下载量很大,而且当将代码添加到UI时,不得不意识到可能缺少的功能。
所以我的问题是::
-小部件是否显着地减慢了应用程序的速度?
-多少小部件应该是可以的?
在谷歌的IO演讲中,他们最多只有10人左右,我记不清了。
发布于 2013-08-29 14:12:54
这些小部件会显著降低应用程序的速度吗?
那得看情况。这取决于你是否制作了一个移动应用程序,你是否关心旧浏览器(IE8,我正在看着你)等等。
多少小部件应该是可以的?
复合小部件中的小部件?小部件同时显示在屏幕上?整个应用程序中的小部件?
我们使用了数十个小部件,我不认为它们会减慢我们的速度(服务器端和跨线移动数据需要花费大部分时间,而不是客户端)。但是我们的最低级别的小部件,在我们重用最多、有时也有点复杂的小部件中,并不是(全部)合成的,而是使用事件委托的。
我的经验法则是:如果一个Element就足够了(比如一个SpanElement来显示一些数据,或者一个InputElement用于一个您不关心事件的文本框),那么就使用它。如果您需要事件,那么使用一个小部件。这个规则的例外是,如果您正在构建一个可重用的复杂小部件,并且使用事件委托与组合小部件相比,它不会增加太多的复杂性。
记住:早熟优化是万恶之源, 和性能的三个规则是度量、度量、度量。。
顺便说一句,您使用gwt-引导程序而不是bootstrap.js的原因是错误的:gwt--引导加载bootstrap.js,就像您自己可以这样做一样,因此不会将您从大量的初始下载中拯救出来。
https://stackoverflow.com/questions/18512121
复制相似问题