gpt4 book ai didi

java - GWT 与 Spring MVC 的比较

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:03:38 24 4
gpt4 key购买 nike

我想知道在这两种技术方面都有经验的人是否可以对这两种技术进行客观比较,假设您正在构建一个复杂的 Web 应用程序,该应用程序在服务器和浏览器中都非常丰富。

对我来说,旧范例的一个问题是 Spring MVC 层的可测试性。我发现由于不可测试的注解,有很多错误会潜入您的应用程序中。该模型还减慢了开发周期,因为您必须重新启动服务器才能更改注释/ Controller 代码……这是我个人觉得非常烦人的事情。

我也不想处理 javascript 的复杂性。使用和测试全部使用 Java 的应用程序听起来很吸引我。我真的不想掌握另一种语言,也不想了解它的所有怪癖、奇怪的设计决策、特质和浏览器不兼容的完整历史。

那么对于复杂的应用程序,GWT 会提供更好的方法吗?与 Spring MVC 相比,这种方法是否有任何严重的限制,尽管更难使用,但可能更灵活?是否存在构建复杂应用程序时常见的问题和障碍?

我真的很感激两者之间的比较。请记住,我没有使用 GWT 的经验,但有大约 10 年以上的 Spring 经验。谢谢!

最佳答案

事实是,GWT 也有一个学习曲线,至少在我看到它的时候,两年前,你在基本控件上做的不多,你需要外部库,这意味着更多的学习。

在尝试学习 GWT 但没有取得多大成功之后,我选择了 web 服务加上 jQuery 或 ExtJS,这也提供了非常清晰的角色分离。我坐下来学习 JavaScript,这并不容易,但比使用 GWT 有趣得多。

至于浏览器的兼容性,一旦你使用了一个现代的图书馆,你就会有很少的。我的代码适用于所有浏览器,没有太多问题,包括 IE 6。此外,当我太忙时,我只编写服务并将 JavaScript 接口(interface)部分外包,这可以提高工作效率。

无论如何,这是相当主观的,另一个精通 GWT 的人可能会有与我相反的观点。我无论如何都会拒绝,理由如下:

  • 易于调试。不再是这样:使用 FireBug 调试 JavaScript 非常容易,而且 JavaScript 中不会有任何业务逻辑,只有服务调用和显示。
  • 浏览器兼容性。需要记住的怪癖很少,最常见的一个是 IE 不接受列表中的尾随逗号,无论如何这都不在标准中,但 Firefox 容忍它们。任何现代 JavaScript 库都会为您处理兼容性问题。
  • 速度。首先,我要声明 JavaScript 对于浏览器内的任何合理计算来说都非常快。较慢的是 DOM 操作,当然还有任何涉及网络的东西,比如 AJAX 调用。如果您不犯设计错误,例如填充太多东西或将许多元素直接添加到 DOM 时可能出现的其他问题,而不是构建您的结构然后一次性附加所有元素,您的页面将表现得恰到好处。<

就我现在的想法而言,唯一正当的理由是,我已经了解 Java,我不想学习其他语言

至于你对Spring MVC的评论。我正在使用 Spring MVC,我感觉不到重启服务器的痛苦。 Spring 的全部意义在于容器外的一切都应该很容易使用!在 Spring Controller 中,我有非常少的代码,只调用底层服务。我需要很好地进行单元测试的是服务。

Controller 需要测试的代码很少,我可以调用它们并在 JUnit 中测试它们,但是,至少现在,我的方法是通过一个带有 jQ​​uery 调用的网页完成一个简单的外部测试来检查它们的响应(这不是单元测试,而是集成测试,但我觉得如果编写得当,对 Controller 进行单元测试的值(value)很小)。

关于java - GWT 与 Spring MVC 的比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7858272/

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