这个博客有许多 GWT 经验丰富的用户的意见,并有一些很好的讨论点。我个人对各种 UI 框架都有丰富的经验。我会加我的两分钱。让我们看看GWT 的基本优点和缺点
基本优势
GWT 将 Web 层编程带到 JAVA。因此,Java 的明显优势开始发挥作用。它将提供面向对象的编程。它还将提供出色的调试和编译时间检查。由于它生成 HTML 和 Javascript,它还能够在其生成器中隐藏一些复杂性。
根本劣势
劣势从同样的说法开始。GWT 将 Web 层编程带到 JAVA。如果您了解 JAVA,您可能永远不会寻找替代语言来编写您的业务逻辑。这是自给自足的和伟大的。但是在为 JAVA 应用程序编写配置时。我们使用属性文件、数据库、XML 等。我们从不将配置存储在 JAVA 类文件中。仔细想想,这是为什么呢?
这是因为配置是静态数据。它通常需要层次结构。它应该是可读的。它从不需要编译。它不需要JAVA编程语言的知识。简而言之,这是一场不同的球赛。现在的问题是,它与我们的讨论有何关系?
现在,让我们考虑一个网页。您认为当我们编写网页时,我们会编写业务逻辑吗?绝对不。网页只是一个配置。它是分层容器和字段的配置。我们需要为将从网页中捕获并显示在网页上的数据编写业务逻辑,而不是创建网页本身。
上一段做了一个非常非常有力的陈述。这将解释为什么基于 HTML 和 XML 的网页仍然是最流行的。XML 是编写配置的最佳业务。框架必须允许将网页与业务逻辑明确分离(MVC 框架的目标)。通过这样做,网页设计师将能够应用他的可视化和艺术技能,只需配置 XML,就可以创建外观精美的网页,而不必为编程语言的复杂性而烦恼。开发人员将能够使用他们最好的业务 JAVA 来编写业务逻辑。
最后,让我们直接谈谈影响。GWT 破坏了这个原则,所以它必然会失败。开发 GWT 应用程序的成本将非常高,因为您需要多技能的程序员来编写网页。所需的外观和感觉将很难实现。由于不必要的编译,修改网页的周转时间会非常高。最后,由于您使用 JAVA 编写网页,因此很容易用业务逻辑破坏它。在不知不觉中,您将引入必须避免的复杂性。