gpt4 book ai didi

java - 有没有人使用过 GWT 并且可以说它确实兑现了它的 promise ?

转载 作者:IT老高 更新时间:2023-10-28 21:11:31 26 4
gpt4 key购买 nike

我是一名长期的 Java Web 开发人员,并且作为大多数 Web 开发人员,我使用了很多 JavaScript。尽管我不像其他许多 Java 开发人员那样讨厌 JavaScript,但我仍然意识到它的缺点。

GWT 是一种使用 java 编写 javascript 的方法。由于我很长时间都知道这两种语言,因此我对这种说法持怀疑态度。我的意思是,我很难相信您真的可以仅使用 GWT 创建具有丰富 GUI 的完整 Java 动态 Web 应用程序。这就是为什么我在这里询问是否有人有机会与 GWT 合作进行大型项目。如果是这样,我真的很想听听他们的想法。

最佳答案

我已经在 GWT 中编写了相当大的应用程序,我不得不说我对 GWT 的印象比项目开始时还要多。我对该平台的总体“感觉”是,事情真的是经过深思熟虑的,除非他们能做好,否则他们不会做事,并且在所有浏览器上都能做好(IE用户仍然是你的用户!)

现在,请记住,GWT 真正擅长的是创建大型、高度动态的单页样式 web 应用程序。如果您的目标是使用一些 javascript 效果来增强原本静态的页面,那么 GWT 就太过分了(gquery 可能会改变这一点,但我没有使用 gquery 的经验)

我喜欢的一些功能包括:

  • 在服务器端和客户端之间共享代码的能力。 (当然,如果您的服务器端是用 java 编写的)。一开始没想到会大量使用这个,但在实践中,它确实可以节省很多代码重复。但是,我发现一般来说,这只适用于考虑到 GWT 编写的代码 - 使用未考虑到 GWT 编写的代码通常不能很好地工作。这是因为 GWT 只有 JDK 中的一部分类,而在 javascript 中,您必须比在服务器端更关心性能。
  • 它旨在实现最快的 javascript,比您手工编写的速度更快(因为如果您确实手工编写,代码将无法维护)。不幸的现实是,很多人使用的浏览器都有非常慢的 javascript 引擎,所以你的 javascript 代码的性能很重要。 Gwt 的编译器是一个真正的优化编译器——它将内联方法,实习你所有的字符串。尽可能去虚拟化您的方法调用等。因为您正在为每个浏览器和语言环境进行编译,所以编译器还可以内联特定于浏览器和特定于语言环境的代码。这个Google I/O presentation有一些基准测试。
  • 它还会自动将您的图像拼凑在一起,以最大限度地减少所需的 http 请求数量,从而再次提高您网站的速度。 GWT 2.0 将允许您将任意文件组合在一起。
  • gwt 创建的大多数文件都有一个强哈希作为文件名,这使您可以将文件设置为永久缓存,而不必担心文件更改时会有旧版本
  • GWT 2.0 中的代码拆分令人印象深刻,并且很难手动完成。随着应用程序大小的增长,处理 javascript 的大小变得越来越重要,您需要能够将其拆分为 block
  • 您正在使用静态类型语言进行编码。我知道有些人更喜欢动态类型,但我喜欢将这场辩论与 emacs 与 vi 的辩论进行比较——两个阵营都有很多聪明人,在互联网上争论不会改变任何人的偏好
  • 您可以使用 Java 生态系统中存在的许多出色工具,这些工具通常比等效的 javascript 工具成熟得多。 - junit、java IDE、java 调试器、重构等。

关于java - 有没有人使用过 GWT 并且可以说它确实兑现了它的 promise ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1239076/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com