2013-02-09 93 views
2

我正在构建一个网络应用程序,该应用程序将是一个Twitter风格的单页应用程序,可能为用户验证。 80%的交互发生在JavaScript的前端,并在一个后端谁提供的数据从数据库的帮助...Mvc前端和Mvc后端:错误的架构?

直到现在我的想法是使用Symfony2,再加上一个MVC框架的像Backbone或Ember这样的前端(更喜欢Ember,因为它看起来更加有文档记录,而且一般更有组织和更容易)。

当我开始学习Symfony2时,我注意到Symfony2提供的许多东西对我的应用程序没有用处。我真的不需要它的'意见,因为意见将被用Javascript来模板化,我并不真的需要它的路由器,因为这也将与前端的JS状态处理..

Symfony2只会被用作JSON响应机制,我认为教义还可以帮助那些主要不是后端人员的人轻松地进行查询,当然也可以用于身份验证。我想FORMS也是由JavaScript处理的。

我见过很多关于Symfony2和backbone,RESTful等的其他问题。有很多不同的答案,有人说你需要一个Bundle来创建RESTful API(为什么?) - 其他人说你需要Bundle来完成整合骨干/ Symfony2,其他人说你只需要用Symfony2查询JSON数据并将它们序列化并发回,所以没什么特别的。

所以我的问题是:像Symfony2似乎是这种APP的矫枉过正。但考虑到这是一个有机会学习的项目,这真的是一个问题吗? (表现明智,或与前端表现不佳)。这个问题就是,你可以提供Symfony2上任何一个与单页面Web应用程序集成的实例吗?我已经看到了不同的元素,但没有作为一个整体,所以我可以知道我想要以代码方式实现什么。

回答

3

我不知道Symphony2,但听起来很像大多数的ember + rails项目。这些应用程序使用很少的rails框架。人们可以认为轻型框架更合适,但不应该成为问题。更重要的是,你可以一次学习2个新的框架。如果要开始使用,我将首先构建一个使用ember夹具的MVP,而适配器根本没有后端。一旦你有了这个工作,你可以插入任何有意义的框架。 Fire Up Ember.js peepcode显示了如何以这种方式构建应用程序。