Web applications 真实世界ZK vs GWT体验

Web applications 真实世界ZK vs GWT体验,web-applications,gwt,jakarta-ee,zk,Web Applications,Gwt,Jakarta Ee,Zk,我和一位同事正在为一个新的应用程序编写一份提案,我们已经介绍了ZK和GWT两种可能的选择。在把两者都搞乱之后,我更愿意继续进行ZK概念验证,但该公司的一位“高级架构师”(他甚至不在我们的团队中)似乎正试图接管该项目,并告诉我们应该采用什么技术。他正在找任何借口把GWT推到我们身上,对ZK犯规 现在我并不是说GWT本质上是坏的,也不是说ZK是web应用程序开发的终极目标,但我不喜欢被一个没有真正做足够研究来推动某项技术的人告诉我如何开发应用程序。虽然这个人不在我们的团队中,但管理层倾向于听取他的意

我和一位同事正在为一个新的应用程序编写一份提案,我们已经介绍了ZK和GWT两种可能的选择。在把两者都搞乱之后,我更愿意继续进行ZK概念验证,但该公司的一位“高级架构师”(他甚至不在我们的团队中)似乎正试图接管该项目,并告诉我们应该采用什么技术。他正在找任何借口把GWT推到我们身上,对ZK犯规

现在我并不是说GWT本质上是坏的,也不是说ZK是web应用程序开发的终极目标,但我不喜欢被一个没有真正做足够研究来推动某项技术的人告诉我如何开发应用程序。虽然这个人不在我们的团队中,但管理层倾向于听取他的意见,并且可能会“告诉”我们该用什么

这家伙反对ZK的理由似乎是“浏览器不兼容”、“浏览器中的业务逻辑太多”和“项目不成熟”。这三点我都不同意。他也没有为GWT提供任何论据,似乎他实际上对这两种技术都不太了解。他还声称,最好使用公司内部有人知道的技术。这里只有一个团队实际使用了GWT,而该项目已经。。。问题


有ZK和/或GWT实际经验的人能不能提出一些我能提供的论点,至少能让这两种技术都回到桌面上,而不是试图在没有真正研究的情况下推动一种技术?

我从未使用过ZK,但从外观上看,ZK更为“企业就绪”,因为它附带了许多随时可用的小部件。GWT最近才获得了类似DataGrid的控件。在GWT中重新创建ZK的日历或电子表格需要花费大量的精力

“你是老板”的“浏览器中有太多的业务逻辑”声明实际上表明他并不真正知道自己在说什么。GWT是一种纯客户端技术,而ZK看起来几乎完全是服务器端技术

如果你还没有退房。他们似乎覆盖了大部分的基地


最后,请记住,编写程序的是你,而不是他。如果老板强迫你做一些需要更多时间才能实施的事情,那么相应地夸大你的估计。用他们关心的东西吸引管理层要容易得多:“这项技术将按X增加预算,按Y增加日程安排”,然后再加上技术细节。

GWT和ZK都提供了一个在Java中启用Ajax的框架。两者都很成熟,没有浏览器不兼容的问题(ZK基于jQuery)

然而,它们在架构上是非常不同的。GWT是客户端方法——所有代码都在客户端运行,而ZK是服务器端方法——所有代码都在服务器上运行(但它们可以选择在客户端编写一些应用程序代码)。所以,您的同事错了,您已经知道了——GWT在客户端公开了业务逻辑,而不是ZK

GWT(作为一种客户端方法)的优点是响应速度更快(如果设计得当,可以减少客户端服务器请求)。缺点是必须在客户端和服务器之间执行所有数据封送(GWT RPC/JSON只支持非常简单的对象)。相比之下,ZK的优势是您可以直接访问所有后端资源,无需RPC,无需代理。。。此外,ZK允许您在客户端编写一些代码,以增强关键部分的响应能力(不幸的是,客户端代码必须是JavaScript)。对我来说,这是最好的平衡


GWT的真正优势是谷歌。我一直听到一些老板因为这个把工程师推到GWT。我还听说一些GWT项目失败了(主要是由于生产力问题造成的——如果项目很复杂的话会很痛苦),然后切换到ZK。

如果您需要ZK(服务器端AJAX框架)的优点,您可以将GWT与之配合使用。请注意,该页面是由Potix公司的工程师Jeff Liu编写的。这就是制造ZK的公司


我也在努力在ZK和GWT之间做出选择。我正在寻找一篇最近的无偏见文章,讨论了这两个问题,但没有找到任何好的方面。

公司董事讨厌风险和不确定性。若有许多开发人员说框架很酷,而一个架构师咬牙切齿地抱怨风险,那个么他们只会一次拒绝。您需要获得独立于第三方的软件参考资料,即使使用开源软件也是可能的

至少有一家公司销售对ZK的支持。他们会很乐意让您与使用ZK的公司的架构师联系。问这些独立的第三方建筑师一组开放式的问题,如“你最喜欢什么,你最不喜欢什么”和“你发现的主要挑战是什么”和“最让你吃惊的”和“你考虑了什么其他框架,为什么选择ZK”。公司董事们喜欢与其他公司的高层人士进行这种基于事实的研究

同时,设计一个“攻击课程页面”,这是一个公平的代表,你将不得不建立在项目的复杂性排序。让团队在ZK和GWT中实现该页面,并让每个人都尝试改进这两个页面。作为一个团队写下那段经历。一定要包括反对ZK的人,不要以敌对的方式这样做。不要陷入“他们对我们”或“她对我”的局面,而是将其作为一个开放的团队事实调查和培训练习,任何人都可以在其中做出任何贡献。Wiki页面可能是实现这一点的理想格式

您将成功地使用这种方法,因为ZK已经在数十亿美元的全球金融公司的30多名开发人员的团队中用于数百万美元的开发项目。你是其中的一员