隨着時間的推移,我一直在爲我所有的Windows應用程序使用事件驅動編程。即處理選擇的索引改變/文本改變等。事件。但最近我一直在使用INotifyPropertyChanged接口和ObservableCollection類來處理數據更改。
隨着涉及的應用程序/屬性的增長,您是否會發現長期使用此方法可能面臨的任何可能的問題?數據驅動的編程/事件驅動編程
2
A
回答
5
數據驅動和事件驅動範例不一定是相互排斥的。即使在使用MVVM風格模式時,仍然存在一個由用戶驅動的UI,因此您必須考慮事件。但是使用諸如MVC和現在的MVVM概念這樣的想法,你將很多邏輯從UI中分離出來,這應該會導致更好的可維護性,可測試性等。隨着應用程序的增長而不是更多,更好/更大的解耦將導致更少的問題。所以,國際海事組織,你在正確的軌道上。
Requisite Wikipedia article.這是一個有趣的閱讀,雖然你不會看到INotify ...和ObservableColl ...提到,因爲這些都是技術特定的。還有一個有趣的批評部分,你可能想看看。但是不要讓這一部分超過其他考慮因素。
1
它們是一樣的東西,除了源和方向不同。
正如你所描述的那樣:
- 事件驅動可以讓你基於用戶交互更新數據
- 數據驅動的,您可以根據數據變化更新用戶
請考慮INotifyPropertyChanged強制實施PropertyChanged事件。他們是一樣的,並且可以一起工作。
相關問題
- 1. 數據驅動編程書?
- 2. 協程VS事件驅動編程
- 3. PL/SQL中的事件驅動編程
- 4. 事件驅動的編程 - node.js,Java
- 5. 域驅動的編程和事件
- 6. 什麼是事件驅動的編程?
- 7. Ext JS中的事件驅動編程
- 8. 事件驅動的編程node.js?
- 9. Windows驅動程序編程或Linux驅動程序編程?
- 10. Java和事件驅動編程
- 11. 事件驅動架構/編程
- 12. 響應式編程與事件驅動編程有何不同?
- 13. 編譯驅動程序
- 14. C++成員函數指針或事件驅動編程
- 15. 函數式編程+域驅動設計
- 16. 學習編程Windows驅動程序
- 17. 驅動程序編程幫助
- 18. Win32事件驅動的編程是如何實現的?
- 19. 事件驅動的編程後臺代碼是怎樣的?
- 20. 在Clojure/ClojureScript中處理事件驅動的編程
- 21. 關於事件驅動編程的好材料
- 22. Java事件驅動編程下的什麼?
- 23. 事件驅動編程是如何實現的?
- 24. 事件驅動編程是如何完成的?
- 25. 事件驅動的編程:回調與消息輪詢
- 26. 以編程方式爲MySQL數據庫安裝驅動程序
- 27. 使用.NET編程的USB驅動器
- 28. 執行上下文驅動的編程
- 29. 多線程:事件驅動與消息驅動
- 30. 如何在事件驅動編程中找到執行結束
同一枚硬幣的兩面。 – WernerCD 2010-10-08 20:13:23