在wpf編程中使用MVVM模式的優劣

大概要從很久以前說起,那時候使用vc6編程,界面上不斷的添加程序的行爲邏輯以及系統自身附帶的代碼,臃腫不已。那時候就夢想着,要是有一種方法可以有效的區分UI和程序邏輯,該有多好啊。

終於有機會,需要使用C#,使用WPF完成桌面程序了。逐漸的,又接觸到了綁定等等新的方法,終於瞭解了MVVM這個看似很棒的分離UI和邏輯的模式,當時真是很happy。寫了幾個小程序,自己覺得很贊啊。於是開始使用這個模式完成工作了。然而,隨着工作的日益進展,其不足亦日益顯現。

最大的不足就是不夠靈活,MVVM很好,可是一旦使用這種模式,整個程序的框架也就完全定死了,沒有改變的餘地,這種模式是一個view和一個viewmodel相對應,導致一些很小的view也需要重寫viewmodel。而且綁定雖然看似好用,但在實際調試的過程對綁定的相關項時而弄錯。

其實再想想使用vc6的時候,程序的臃腫,很大程度上是開始的時候就沒有劃分邏輯和界面,沒有細化界面中的一個個子模塊,而在編程中儘量的模塊化,是本應該做到的,而無須強迫通過MVVM這種形式。

軟件工程中有句名言,“no silver bullet”,想想也是,每一種方法和模式都有其特定的使用場景,指望一種方法包打天下本就是不切實際。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章