The book has so many great aspects, that it’s hard to pick a starting point for singing it praise. The entire book is printed in full color, which a subject matter like WPF absolutely demands. The code snippets have Visual Studio 2005 colorization, which makes reading the code very natural and seamless. Since all of the images in the book are in color, it’s truly a pleasure to peruse the screenshots. After reading that book, I just can’t go back to reading black-and-white books about WPF.

It is by far the most practical book about WPF I’ve read yet. The author explains complicated features of the framework in “everyday terms” and then mentions how they can be used in realistic ways. Considering the deluge of “pipe-dreamery” I’ve seen about WPF so far, a pragmatic perspective was much appreciated.

Since Adam Nathan and Daniel Lehenbauer both work on WPF at Microsoft, and the book was reviewed by many other members of the WPF group at Microsoft, this book has the lowdown on everything. It presents many interesting tidbits in callouts, such as FAQs, Tips, Warnings, etc. Not only is that information very helpful, but it makes the reading experience more enjoyable.

The chapter on 3D programming is outstanding. Daniel Lehenbauer, the lead developer on WPF’s 3D APIs, wrote the chapter and did a marvelous job. It is the first explanation of 3D programming in WPF that actually made sense to me. He didn’t dive right into the mind-numbing (and stomach-turning) details of texture coordinates, normals, etc. like the SDK docs. Instead he gave a very understandable and interesting overview of 3D programming in general, but explained it in the context of WPF. Truly fantastic!

Of course, every rose has its thorns. One (very minor) aspect of the book which I found to be distasteful is the abundance of exclamation marks (!). The author must have drunk a lot of coffee while writing the book. I assume that he included all of those exclamation marks to convey his enthusiasm for WPF, so it’s not all that bad. :)

One other thing which bothered me was that the author referred to the first version of WPF as “WPF v3.0”. What is up with that?! I’m not sure if that is what he, the author, decided to call it or if that is the “official” Microsoft name for the first version of WPF. Either way, that is the craziest thing I’ve ever heard. So here’s the official logic regarding The .NET Naming Catastrophe of 2006: ‘The first version of WPF is called “WPF v3.0” because it’s part of .NET 3.0, which is really just .NET 2.0 with additional libraries.’

They must use really strong drugs out there in Redmond.

Anyways, if you have not already done so, just buy and read the book. You won’t regret it. Trust me.

Share this:

Like this:

LikeLoading...

Related

This entry was posted on Friday, February 9th, 2007 at 10:22 am and is filed under Reading Material. You can follow any responses to this entry through the RSS 2.0 feed.
Both comments and pings are currently closed.

I don’t think that Petzold’s book is a waste of money, but if I had to choose only one or the other, I’d go with WPF Unleashed.

IMO, WPF Unleashed is better for people who already have some WPF experience. I feel that it is not written with beginners in mind. I know that you already have some WPF experience, so Unleashed might be your better option.

Petzold’s book is better for the WPF newbie. It has his typical warm, smooth radiance; like eating chicken soup by the fireplace on a cold winter day.

Of course, these opinions are just opinions. Don’t let me dissuade you from buying either book. Read them both! :)

Hi Josh, I’ve been reading your wpf stuff since yesterday when I finally had time to sit down and find out what it’s all about.

I’m very interested in wpf and xbap primarily because I’m getting the impression that the .net business apps I write which almost always require a web and windows interface might work well in that environment and save me having to completely rewrite the UI layer for web and windows as I do now.

Does a book like this one contain any info on xbap or is that a whole other area with other books that would cover it?

The book’s seventh chapter discusses the different types of WPF apps (windows app, navigation app, XBAP, etc.) In WPF, the deployment mode does not really affect the way you design the application…too much. Naturally there are still things to keep in mind when developing for a Web browser deployed app, as opposed to a desktop app (namely, coding within the Internet Security-level restrictions).

Thanks for your review and for your great blog. You have become to WPF what DVD Jon is to DRM :)

I do have a question for you. What tools do you use for wpf dev? Do you switch between Blend, VS.Net or do you just use VS.Net and hand-write all your XAML? The latter approach is what I’m doing but it really is not very productive. Good for learning. I was curious what your approach was.

Thanks for the positive feedback. Since I had never heard of DVD Jon, I feel like a very small fish now! :)

I do almost all of my development in VS.NET, with hand-written XAML. I’m just not satisfied with the WPF dev tools enough yet to really invest a lot of time in them. Plus, writing the XAML by hand is a wonderful learning tool, as you mentioned.

I was not a huge fan of all the callouts. I felt like they were stuck in there awkwardly, and often made the book more verbose.

Nathan had a bit of hubris explaining the architecture of WPF, considering he was one of the architects. Ultimately, Matthew MacDonald did a better job criticizing the shortcomings of WPF, particularly the navigation system.