First time here?

You are looking at the most recent posts. You may also want to check out older archives. Please leave a comment, ask a question and consider subscribing to the latest posts via RSS or email. Thank you for visiting!

Quick, what’s the most popular thing in XAML development?  Yeah, thought so…MVVM or Model-View-ViewModel.

It’s one of the most popular subjects I hear about when people talk about developing applications with WPF and Silverlight.  However, as much as it is talked about and as much as frameworks are born every day, there isn’t a ton of just simplified ‘here’s how you do it’ information in one place.  I mean, sure there *is* information, but I have to admit I think it is a bit scattered all over.

One of the pioneers of promoting this pattern for WPF development, Josh Smith, took some time to try to solve that.  Josh has recently released a self-published book titled Advanced MVVM and is a quick and good read about the pattern.

FULL DISCLOSURE: Josh presented me with a complimentary printed copy of this book a few weeks ago.  I had already intended on purchasing it when available on Amazon Kindle and have since done so.  In the nature of ensuring I share the love and complimentary goodies, Josh allowed me to give away my printed copy to someone, which I did at a Silverlight user group meeting just last night.  I’m grateful Josh provided me with a printed copy and also grateful he encouraged me to give it as a prize.

Advanced MVVM Book CoverThe book is about 50-ish printed pages and is a quick read.  It covers creating a simple and common game, Bubble Burst, using the MVVM pattern.  The code is all WPF, but the concepts still apply to Silverlight development and Josh points out some areas where there are differences.

All of the code discussed in the book is available to download so that you can work with starting projects as you go throughout the book learning the pattern.  Josh covers all the key topics of the pattern you would expect: ViewModel, View, Commands, etc.  One of the things that Josh is good about is not being a zealot of the pattern.  He’s quick to point out that when code belongs with the View and when he thinks it doesn’t.

When doing development I always think it is a great idea to have some solid references on your shelf.  No matter where you are in your skill set, there will always be those times when you want to refer back to something you may have forgotten or perhaps get a different perspective on a specific way of doing things.  For MVVM development, I think this is one such reference.

On a side note, Josh got a lot of crap for his initial chosen method of distribution (Lulu digital, which uses a DRM PDF).  He quickly responded and offered a printable copy as well as put it on Amazon for Kindle distribution (which I bought and can read on my Kindle, my phone or my PC…note: phone and PC are in color too).  There are a multitude of ways you can get the title all of which are listed at the AdvancedMVVM.com web site which also lists a table of contents for the book.  If you are doing Silverlight or WPF development you should pick it up, read it and keep it handy.  It’s not the only opinion, of course, but it is a great presentation of the pattern relevant to the development platform that I’ve seen.


This work is licensed under a Creative Commons Attribution By license.

3/4/2010 2:22 PM | # re: Learning the M-V-VM pattern for XAML development
Thanks for the Tip Tim. I really enjoy your posts and your will to share knowledge.
3/4/2010 4:09 PM | # re: Learning the M-V-VM pattern for XAML development
austin - the code/writing is very much geared toward WPF. The concepts, however, can be applied to Silverlight. As a reference for the pattern in general, it is a good one. Things like triggers and some elements of commands are where the current differences in this pattern apply to WPF/Silverlight. But like I said, for the cost and information, it's worth it.
3/5/2010 8:39 AM | # re: Learning the M-V-VM pattern for XAML development
Sure wish Karl would do one of these books for his Ocean framework..
12/29/2010 8:52 AM | # re: Learning the M-V-VM pattern for XAML development
Most of the people doing this hopefully know this is fire. I worked on macs for a wile and when I can I will get MLTI certified, like my father, to work and program these systems. href="http://touchscreenlaptophq.com/">Touch Screen Laptop technology works and also read about. But most people are using these things for fun, which they shouldnt.
6/6/2011 4:52 PM | # re: Learning the M-V-VM pattern for XAML development
I was more than happy to seek out this internet-site.I wanted to thanks for your time for this excellent learn!! I undoubtedly enjoying each little little bit of it and I have you bookmarked to take a look at new stuff you weblog post. georgetown youth baseball

Please add 5 and 1 and type the answer here:


The opinions/content expressed on this blog are provided "ASIS" with no warranties and are my own personal opinions/content (unless otherwise noted) and do not represent my employer's view in any way.