2010-10-08 95 views

回答

5

數據驅動和事件驅動範例不一定是相互排斥的。即使在使用MVVM風格模式時,仍然存在一個由用戶驅動的UI,因此您必須考慮事件。但是使用諸如MVC和現在的MVVM概念這樣的想法,你將很多邏輯從UI中分離出來,這應該會導致更好的可維護性,可測試性等。隨着應用程序的增長而不是更多,更好/更大的解耦將導致更少的問題。所以,國際海事組織,你在正確的軌道上。

Requisite Wikipedia article.這是一個有趣的閱讀,雖然你不會看到INotify ...和ObservableColl ...提到,因爲這些都是技術特定的。還有一個有趣的批評部分,你可能想看看。但是不要讓這一部分超過其他考慮因素。

1

它們是一樣的東西,除了源和方向不同。

正如你所描述的那樣:

  • 事件驅動可以讓你基於用戶交互更新數據
  • 數據驅動的,您可以根據數據變化更新用戶

請考慮INotifyPropertyChanged強制實施PropertyChanged事件。他們是一樣的,並且可以一起工作。

+0

同一枚硬幣的兩面。 – WernerCD 2010-10-08 20:13:23