-2

我打算在 scala 中开发一个 Web 应用程序。我是 scala 的新手,对可用的框架感到困惑。我应该去玩还是去检票口。我有一些使用 MVC 架构的经验。请解释我使用它们的优点和缺点。我可以将它们相互结合使用吗?

提前致谢。

4

1 回答 1

1

Play 和 Wicket 都是具有可靠设计和出色、活跃且响应迅速的社区的框架。我在一个中型项目中使用了 Wicket,每当我在Wicket 邮件列表上提出问题时,我几乎都能立即得到反馈。

两个框架之间的主要区别之一是它们处理状态的方式:Wicket 将状态存储在服务器上,而 Play 非常严格地遵循 REST“无状态”原则,支持客户端(或 URL)上的状态。

例如,考虑一个简单的 AJAX 计数器:

  • 在典型的 Wicket 实现中(请参阅Wicket Ajax 计数器示例),您会将计数器存储在服务器上(在 a 中Model[Integer])。当您单击该链接时,将对服务器进行 AJAX 调用,其中模型被更新(即,计数器递增),并且更新后的计数器的 HTML 标记被发回并显示。
  • Play 实现很可能会将计数器存储在客户端的网页上,并使用jQuery之类的东西来更新计数器。

在服务器上存储状态有其优点(例如,程序员易于使用)和缺点(会话超时时状态丢失),因此根据您的业务需求,一种框架可能比另一种更适合。

于 2013-02-28T09:14:54.707 回答