MVVM Experience

  这几天因为工作上需要用到WPF,所以重新回去看了C#,并仔细看了<WPF Apps With The Model-View-ViewModel Design Pattern>,研究了它所带的例子,对MVVM模式有了个大概了解,也不得不佩服老外的Demo写得不错,很有研究价值,深究,学到的东西还真不少,以下是我几点体会:
  

  1.关于WPF,其实就是委托+事件的合集,各种委托,各种事件,如果对这两者不熟悉的,请务必了解清楚,可以参考MSDN在线上的一些例子,例如“事件和委托”“引发事件”“如何:在类中实现事件”“处理和引发事件”“如何:引发和使用事件”,如果还有精力,可以看看泛型这个东西。以上三个东东,是.NET入门必备,因为到处都是他们的身影,所以,需要个人很好的理解。
  

  2.关于委托,个人理解为类型安全的函数指针,关于事件,个人理解为定义好参数类型的委托,例如public delegate void EventHandler(object sender, EventArgs e);其中第二个参数可以自定义,具体的内容请查看相关内容。
  

  3.MVVM模式,初次看起来很晕,可能是WPF中很多XAML的属性不懂吧,所以这个例子也看了至少3遍,基本上是每一行代码都拜读过,寻根究底,最后发现,其实我就是将各种事件的前后线索画出来,各种Command的来龙去脉,然后再来看看整体的设计,也就清晰了,不得不惊叹MVVM真的是为WPF量身定制,Model层和View层完全只需要完成自己的职责,其他的交给ViewModel完成,ViewModel响应各种View上绑定的命令,并对Model的变化作出响应,基本上做到每个层的松耦合,至于真正想了解MVVM模式,Josh Smith的文章和Demo可以仔细研究一番。

  以上只是提供本人对Josh Smith文章和Demo的阅读方法,至于适合大家与否,还请大家自己考虑,thx~

posted @ 2011-10-27 10:15  Anbit自由之路  阅读(269)  评论(0编辑  收藏  举报