Pro WCF: Practical Microsoft SOA Implementation
I went on a book binge this week and have had my nose buried in WCF all week. There's a lot of really good stuff out there, but without a doubt, Pro WCF: Practical Microsoft SOA Implementation by Chris Peiris is probably my favorite.
Overall, the book is just over 400 pages but the author says quite a bit in those 400 pages. The coolest part is that they go over just about every topic that the MSDN Documentation is short on. I found that a lot of things that I stumbled my way through were covered there as well.
I can't find the link, but a while ago, KC had a post where his server program uploaded itself his web server and ran itself. His comment was something to the effect about "What did the first Blacksmith use". I was always really impressed with that program. And not just b/c of the lower cased one's coding skill. The idea itself was really cool. So when WSE 3.0 came out and MTOM was implemented, I tried to bite his style and accomplish the same thing with MTOM. It's an easy port so it didn't take much skill on my part.
Anyway, I've been trying to figure out how to port most of the WSE 3.0 code from my 70-529 book over to WCF. I've been able to do most of it, however it's been frustrating at times. I'm make a lot of typos and copy/paste errors and neither play well with .config files. After wasting about 3 hours trying to get the MTOM port to work, I read through this book and Viola'. I was kinda mad at myself for overcomplicating things that much. So I guess I really like the book in large part b/c I've had quite a few similar experiences with it.
My favorite chapters are discussed below:
Chapter 4 - It discusses installation and configuration. This is the single most frustrating area when learning WCF. Writing code instead of using .config files is lame so I try to avoid it. But getting some help in avoiding common mistakes is priceless..
Chatper 6 discusses managing WCF Services. Not a glamorous subject but being able to monitor and troubleshoot your programs is critical. Moreover, when you're first learning how to do things, it's easy to ignore performance. It's easy to overlook things that can kill performance. After reading this chapter, I am in a lot better shape to find problems
Chaper 7 discusses security. Obviously a pretty big issue when you're building services. Just for good measure there's some CardSpace stuff at the end which was a nice touch.
Chapter 9 discusses transactions. For obvious reasons, this is a subject you need to learn well and although I thought I was pretty familiar with them, I learned more than a few things from this chapter.
-------------------
All in all, this book was pretty impressive. They do mostly real world stuff and while they certainly talk theory, they stick to stuff that you'll encounter in your day to day development. You can only take so much theory and I've found that the documentation on MSDN is really heavy on theory and not enough implementation. This book will bridge that gap. Scott Klein's WCF book will help quite a bit too but won't be out for another month or two.
I also picked up John Sharp's Microsoft Windows Communication Foundation Step by Step. So far, my impressions are quite favorable although I haven't went through it in quite the detail I did with this one. I worked through each of the examples and found them pretty cool. Should have a review of it up shortly.