0

Google IO Talk中提到,小部件会使您的应用程序运行缓慢,您应该不惜一切代价避免使用它们。但我想使用gwt-bootstrap小部件库。这会用很多小部件污染我的 ui.xml。

我之所以使用这个库而不是标准的 gwt bootstrap.js 文件,是因为我不想包含该库,也不想使用 bootstrap 的自定义选项。原因可能是初始下载量大,以及在向 UI 中添加代码时必须注意可能缺少的功能的烦恼。

所以我的问题是:

- 小部件会显着降低应用程序的速度吗?

- 多少小部件应该没问题?

在 google IO talk 中,他们最多有 10 个左右,我记不太清了。

4

1 回答 1

5

小部件是否会显着降低应用程序的速度?

这取决于。这取决于你是否做移动应用,是否关心旧浏览器(IE8,我在看你)等。

多少小部件应该没问题?

复合小部件中的小部件? 小部件同时显示在屏幕上?整个应用程序中的小部件?

我们使用了数十个小部件,我认为它们不会减慢我们的速度(服务器端和通过网络传输数据是大部分时间,而不是客户端)。但是我们最底层的小部件,在我们重用最多,有时有点复杂的小部件中,并不是(全部)组合,并且使用事件委托。

我的经验法则是:如果一个Element足够(例如SpanElement显示一些数据,或者一个InputElement你不关心事件的文本框),然后使用它。如果您需要事件,请使用小部件。该规则的例外情况是,如果您正在构建一个可重用的复杂小部件,并且与组合小部件相比,使用事件委托不会增加太多复杂性。

请记住:过早优化是万恶之源,性能的 3 条规则是度量、度量、度量。

顺便说一句,您使用 gwt-bootstrap 而不是 bootstrap.js 的原因是错误的:gwt-boostrap 加载 bootstrap.js 就像您可以自己做的那样,因此不会使您免于初始下载。

于 2013-08-29T14:12:54.243 回答