MVC代表模型,視圖和控制器。 Backbonejs.or通過與Rails進行比較來解釋這一點,更多here及以下。因爲我不知道Rails,所以比較是沒有意義的。下面的exctract突出了控制器,也許是一個不嚴格的MVC的原因 - 不知道它推斷什麼。這是什麼意思,骨幹不是一個嚴格的MVC?說明「骨幹不是嚴格的MVC」
摘自Backbonejs.org網站(來源here)。
如何骨幹涉及到 「傳統」 MVC?
模型 - 視圖 - 控制器模式的不同 實現傾向於不一致 約控制器的定義。 如果它在Backbone中有幫助,那麼View類也可以被認爲是一種控制器, 調度源自UI的事件,其中HTML模板 充當真實視圖。我們稱之爲視圖,因爲它代表了一個邏輯塊UI,負責單個DOM元素的內容。
骨幹的整體結構比較像Rails的服務器端MVC框架 ,件排隊,像這樣:
- Backbone.Model - 就像一個Rails模型減去類的方法。在業務邏輯中包裝一行數據。
- Backbone.Collection - 客戶端的一組模型,具有排序/過濾/聚合邏輯。
- Backbone.Router - Rails routes.rb + Rails控制器操作。將網址映射到功能。
- Backbone.View - 一個邏輯的,可重用的用戶界面。通常但並非總是與模型相關聯。
- 客戶端模板 - Rails .html.erb視圖,呈現一大塊HTML。
我添加了斜體以突出顯示爲什麼它顯然不是MVC。上面我可以找到模型和視圖 - 術語 - 但術語controller
被明確地省略,而不是使用術語路由器,集合和模板。爲什麼路由器/集合/模板不是控制器?
我發現這個控制器 - 定義controller mediates input, converting it to commands for the model or view
(Wikipeadia here),有點模糊。
關於MVC的非常流行的線程[這裏](http://stackoverflow.com/questions/5863870/how-should-a-model-be-structured-in-mvc/5864000#5864000)。 – hhh 2012-07-31 09:18:45