2010-07-19 24 views

回答

2

我認爲,如果你得到MVC,那麼MVVM是真的是相同的 - 與1額外的部分(ViewModel)。 MVVM在我看來更有用的原因與新的DataBinding流程有關。 ViewModel提供了有用的抽象和清晰的數據綁定,以及綁定是如何呈現或轉換的。這就是我的想法。

MVC中缺少的部分實際上是MVVM模式,在我看來這只是MVVM的隱藏部分。如果你看看大多數MVVM框架,大多數提供了一些消息或通知系統,這實際上提供了MVC中缺少的Controller方面。

將ViewModel視爲View的代碼隱藏,View作爲視圖的設計者,Model作爲Model,以及Notification/Messaging系統作爲Controller,並且我們有一個真正的等價模式。

這對我來說也是一種理解(我也來自MVC模式,但現在喜歡MVVM模式)。

2

也許this是有幫助的。

2

你不需要需要 MVVM - 它運作良好。

MVVM只是一種選擇。你可以自由使用MVC。 MVVM只是利用了WPF和Silverlight中的一些特定功能(主要是令人驚歎的DataBinding支持,還有模板和命令),以便使開發人員的生活變得更簡單。 MVVM特別適合將View與代碼分離 - 甚至比MVC更好,因爲使用DataBinding允許設計人員更有效地更改View,而不用擔心代碼更改而不是MVC。

MVVM還具有與WPF和Silverlight背後的基本設計原理密切相關的優點。 MVVM的基本概念與WPF和Silverlight的設計非常相似,處於相當低的水平 - 例如,查看模板如何與自定義控件一起工作,並將其與View/ViewModel分隔進行比較,並且存在很多相關性可以繪製。

相關問題