我曾觀看Jose Smith的視頻並閱讀了一些有關MVVM的教程,但我不明白MVVM是如何鬆散耦合的,即View和ViewModel。 (還是MVVM的新手,只嘗試過搭建它的項目)與MVP相比,MVVM是如何鬆散耦合的?
在MVP中所有的View,Model,Presenter都有接口,所以它們可以替換或模擬進行單元測試。
但是在MVVM中,我沒有看到人們在View或ViewModel上使用接口。 根據我的理解,ViewModel從Model中抽象出數據,並將其作爲屬性公開給View,並使用該模型進行業務邏輯和數據操作。
所以說,如果我有視圖模型與.SaveData()方法和視圖使用的一些屬性,如果他們沒有接口我如何替換與其他ViewModel?
有人可以向我解釋MVVM是如何鬆耦合的?
我明白了,但有沒有辦法在頁面中添加視圖作爲它們在xaml中的接口類型?或者大多數人只會以編程方式添加View和ViewModel?就像在構造函數中添加View和鏈接到ViewModel一樣。 (我希望你明白我的意思) – 2011-12-21 15:30:12
@KingChan:是的,它將主要以編程方式完成(並且依賴關係將通過DI容器注入到每個對象中)。 – Jon 2011-12-21 15:34:34
謝謝,現在都有道理! :) – 2011-12-21 15:36:09