2013-02-09 92 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顯示瞭如何以這種方式構建應用程序。