9

我开发 Web 应用程序,到目前为止,在我的工作中,每当发生一些 JS 或 CSS 怪癖时,我一直在与各种浏览器进行斗争。我相信使用 GWT 将极大地帮助我从我从这个描述中理解的内容:

今天编写 Web 应用程序是一个乏味且容易出错的过程。开发人员可以将 90% 的时间用于解决浏览器的怪癖。此外,构建、重用和维护大型 JavaScript 代码库和 AJAX 组件可能既困难又脆弱。Google Web Toolkit (GWT) 允许开发人员使用 Java 编程语言快速构建和维护复杂但高性能的 JavaScript 前端应用程序,从而减轻了这一负担。

GWT 的普遍看法是什么?学习和使用它有多容易?

编辑:我是一名 Java 开发人员!

4

5 回答 5

15

你没有说你是否有任何Java背景。如果你不这样做,那么,好吧,我无法说出你的学习曲线可能是什么。

然而...作为一个使用 Java 大约 9 年,并且大部分时间都在使用 Swing 的人,我发现 GWT 非常容易学习。

这些小部件与 Swing 不同,因此需要一些时间来适应。但是,从我的角度来看,这与学习任何其他图书馆并没有什么不同。

就个人而言,我喜欢使用 IntelliJ(我选择的编辑器)并利用所有出色的 Java 工具来帮助我编写更好的代码。(顺便说一句……这是GWT 任务的一部分。)

我喜欢这样一个事实,即这是一个充满活力且高度活跃的工具包,有很多人真的有兴趣让它变得更好。(再次,看看讨论组,甚至浏览贡献者的讨论组。)

如果您想访问更多或不同的小部件,有很多项目希望填补空白:

(注意:我不支持任何这些项目或评论它们的相对优点,只是试图提供一些参考......)

我认为,如果您在网络上四处搜索,尤其是查看GWT 讨论组,您可以很好地了解其他人使用 GWT 所做的事情。

说了这么多,请注意...您仍然会发现在 IE6 与 IE7 与 FireFox 3 上的渲染方式存在一些问题,与...不能说 GWT 在这方面有多好。我所知道的是,在我开发的应用程序的 10 多个月的工作中,我们只遇到过少数情况,我们必须为一个或另一个浏览器专门化 CSS。

于 2008-12-11T18:31:16.870 回答
2

如果您具有 Java 背景或习惯于 Swing 之类的东西,我认为使用 GWT 是有意义的,因为它可以让您在熟悉的环境中使用熟悉的概念进行编码。使用 GWT 的另一个好理由是,如果您的团队主要由 Java 开发人员组成,而 Web 开发人员很少。在这些情况下,它应该很容易学习和使用。

另一方面,我不确定它是否适合构建大多数 Web 应用程序的抽象级别,特别是如果您不是构建类似桌面的应用程序而是构建具有丰富功能的网页时。

Javascript 是一种强大的语言,在某些方面比 Java 更适合 Web(Groovy 可以修改这一点,但我不确定与 GWT 集成有多容易),有很多成熟的 JS 框架可以让你远离大多数浏览器的怪癖并提供恰到好处的抽象级别,有针对 JS 的单元测试框架,还有一些好的编程实践可以让您的代码更易于管理。

对于编写 Web 应用程序,我更喜欢在客户端上进行客户端开发,并且希望看到浏览器朝着这个方向发展,而不是成为各种沙箱(如 Flex 或 GWT)的容器。

于 2008-12-11T18:49:24.557 回答
2

我来自 C# 背景,切换到 Java 和 GWT 并不痛苦。一旦你理解了异步 RPC 调用、JSNI 和类似的概念,你就走在了正确的道路上。

于 2008-12-11T19:11:47.630 回答
1

就个人而言,如果你能找到 Ext-GWT 的替代品,因为支持很糟糕,整个事情都是错误的,而且构思不周。此外,我还没有找到任何关于在 Eclipse 中运行 Ext-GWT 的教程。我已经成功地在 Eclipse 中安装并运行了一个 GWT 示例应用程序,但现在我想使用 Ext-GWT 库,它们不能一起玩。Eclipse GWT 插件建立了它自己的小环境,它不能容纳 Ext-GWT 组件,反之亦然。例如,当 Ext-GWT 需要自己的入口点时,它如何与 GWT 模块OnloadFunction 配合使用?工作中经常使用JS库,还不错,但是论坛太烂了,版主经常粗鲁,或者太含糊,似乎没有“简单的答案”之类的东西

于 2010-06-10T12:15:05.807 回答
0

我参加聚会可能有点晚了……但对于未来的读者……

我已经构建 GWT 应用程序不到 3 年了,所以我可能能够很好地回答“学习 GWT 有多容易”这个问题。

当我决定编写 GWT 应用程序时,我的 Java 技能并没有那么好,所以我的 GWT 学习之旅有些坎坷。当我的 Java 成为我想要的时候,Marius Andreiana 的在线书籍让我的 GWT 学习体验变得更好。

一般意见?从Ray Cromwell的 Google Web Toolkit 的历史和未来 Google I/O 2012演讲中,他将 GWT 描述为一种工具,可帮助 Java 开发人员为 Web 开发而无需学习任何额外的技术、测试框架、构建工具等等。它有点像Phone-gap是为 Web 开发人员制作的移动开发工具。

现在,到发布这个问题的时候,如果提到克伦威尔的演讲,GWT 并没有那么大的感觉,至少,当人们从它现在的位置看它时;社区很强大,文档是一件艺术品,当然还有更多书籍,我个人最喜欢的是Daniel Guermeur 和 Amy Unruh的书。但是,我仍然觉得 YouTube 上似乎存在 GWT 教程的不足,但是,一切都在适当的时候。

最后,HTML/CSS/JavaScript 世界也发生了翻天覆地的变化,更好的前端框架、构建自动化、依赖管理、测试等等。就个人而言,我在构建 google app engine 应用程序时选择编写 GWT,以便它的所有 java 代码,并选择依赖于 CSS/JavaScript 框架的其余时间。

于 2015-10-25T19:37:26.417 回答