2012-05-16 195 views
10

一个应用程序既是JS密集型的,又有一个复杂的业务逻辑+巨大的数据流,它使用backboneJS来构造JavaScript代码,并且服务器端MVC也是必需的(Spring在这种情况下) 。服务器端MVC +客户端MVC

  1. 与客户端MVC(主干)一起实现服务器端MVC(spring)是否是一个好主意,它们之间是否存在兼容性问题?
  2. 如果两者都可以实现,我将如何协调弹簧视图与骨干视图。
  3. 带模板引擎的客户端MVC如何与Spring的'视图'协作。

虽然之前有人问过这个问题,但我找不到合适的答案。有人可以帮我提供详细的答案吗?

回答

9

Backbone.js主要用于SPA(单页应用程序)。您的backbone.js段('视图')会被数据渲染和重新渲染,这些数据会被提取或更改。如果您的应用程序将是JavaScript密集型的,骨干网将是一个很好的小型框架,可以帮助组织您的应用程序。但是,当您的JavaScript应用程序变得非常大时,骨干不是那么简单。你必须对JavaScript的基础知识有一个透彻的理解,并有一个编程决定模式。否则,即使使用backbone.js,您的应用程序也可能变得非常混乱。

无论如何,我离题了。想想你的客户端应用程序(backbone.js驱动)完全独立于你的服务器端应用程序(MVC驱动)。您的服务器应用程序的所有客户端应用程序需求都是数据。这就是为什么backbone.js是围绕REST API构建的。如果您正在开发大型JavaScript应用程序,那么我会考虑将MVC 4的Web API用于您的REST API,并使用backbone.js来帮助组织和标准化您的客户端应用程序。

+0

谢谢@Tyrone。我同意你关于需要主干的部分,但我担心的是我的应用使用Spring MVC后端。是否有任何问题同时使用 – LongInt

+2

对不起Satyaditya,我想我的观点并不清楚。只要您的backbone.js应用程序使用REST API,应该为您的服务器端使用的技术没有区别。您的服务器端应用程序和您的客户端应用程序不应该交织在一起。您的所有客户端应用程序将要发布并从服务器端应用程序获取数据。除此之外,他们没有其他共同之处。实质上,服务器应用程序只负责发送和接收数据。 – TYRONEMICHAEL

+0

您的服务器(Spring MVC)不会负责生成您的视图,backbone.js会生成您的视图。看看TODO教程,你会得到我的意思的想法。 – TYRONEMICHAEL

相关问题