I am now very comfortable with WPF, but I read some articles about MVP and MVVM that find the default project solution ineffective. Then I realized how ineffective it was and how the MVVM pattern is much better. So I want to really learn this pattern. Can I be directed to some resources like maybe a tutorial or a video or something?
This is an article which introduces MVVM but I believe you have already read it: THE MODEL-VIEW-VIEWMODEL (MVVM) DESIGN PATTERN FOR WPF
Here is a very cool WPF application written by Josh Smith utilizing MVVM: Crack.NET
You can also have a look at this question: MVVM: Tutorial from start to finish?
Karl Shifflett also has a nice collection of articles regarding MVVM: M-V-VM
Learning the MVVM pattern is a really good idea! Separating your model from your view really helps enabling a better code architecture for your WPF projects. I learned it initially from watching this video. Jason Dollinger walks through the basics of the pattern in a nice and easy way.
Also have a look at these questions:
Good luck!
There are quite a few good resources out there.
I personally like John Smith's MSDN Article.
In addition, I wrote a multi-part series walking through MVVM, explaining why it works in more detail than most "this is the pattern" articles. If you're familiar with Windows Forms, it's a good way to transition to MVVM. It's a multi-part series, summarized here.
Once you're grounded, you might want to check out Josh Smith's eBook on advanced MVVM.
HTH,
Kent
If you're like me and gain a lot of information from watching screencasts, I found the video created by Jason Donlinger very helpful.
I wrote a tutorial for Building a Shell Application using Caliburn some weeks ago. I think it can help.
Just pay attention to the fact that Caliburn uses some MVP terminology when actually it implements MVVM. Looks like such terminology will be changed/fixed in v2.0.
Martin Fowler calls MVVM as Presentation Model, but his description is pretty good.
This article from Paul Stovell is also pretty explanatory.
Also if you want to have a nice Blend experience with MVVM and sample data I wrote a post on one way to achieve this using a Service Locator. http://www.dontcodetired.com/blog/post/Blendable-Silverlight-%28and-WPF%29-MVVM-Applications-With-Dependency-Injection.aspx
A while back, Jaime Rodriguez and Karl Shifflett hosted a WPF training tour. The latest PowerPoint slides and code samples are available here. Plenty of MVVM information and code samples are included.
You might find the WPF Application Framework (WAF) an interesting start into the world of MVVM.
.
Best Regards
jbe