KnowDotNet NetRefactor

Book Review: Enterprise Development with Visual Studio .NET, UML and MSF

by John Erik Hansen and Carsten Thomsen

by William Ryan
Print this Article Discuss in Forums

Again another Apress title to rave about.  Before I go on, I have to admit that I only write reviews about books I like.  Too much goes into writing a book that I can't really bring myself to be too critical about something - hence I just write about titles I really enjoy.  Well, my man Carsten Thomsen has done it again.  It seems like only yesterday I was reading his Database Programming with C# book and thinking, wow is this guy cool.  I always knew I wasn't the only one out there who's heard all the old crap about not needing to normalize tables and spent a ton too much time at work fixing stuff that eminated from this philosophy.  So Carsten puts out another book, Bill gets it, Bill Loves it.  History repeats itself.

Why?  Well, because I found out it can save me a lot of time and if he'd have written it two years ago, I'd have already finished my current project and working on some even more complex Biztalk orchestration that would be frying my mind.  Seriously though, the real reason I liked this book is that it explains totally real world scenarios and doesn't leave any gaps.

Ok, if you are a new developer with VB.NET standard and have no intention of doing anything more complex, this book is definitely not for you.  If you are someone who solves problems on the keyboard instead of on paper or in Visio, this book also is not for you. (i had this terrible habit but it was slowly dying.    Carsten's book was like penicillin for the bad programming habits bug).  

At the beginning of Chapter 2 he starts out with this qoute "If you are failing to plan, you are planning to fail."  That theme, and how to avoid this trap is what the rest of the book addresses.

What I found particularly helpful (ie I could use it immediately) was using Visio to write code for me.  Yep, for two and a half years now I've had Enterprise Architect sitting on my desk and haven't used Visio to create one class for me.  Then, at my new company when I had to start doing Visio diagrams, I was pretty slow.  You see, all of our objects must be remotable and since we use a lot of Server Activated Objects, that also means that each class need to have an interface defined for it.  Creating a Visio diagram for an interface and then the class and coding both isn't a quick process.  Hmm, then I found out I could have my class created from the interface and code created for them both simply by creating an interface.  10 minutes of reading has saved me HOURS already.

Enterprise Template Projects.  The coolness of these defies words.  However lets just say that you realize that freestyling should be left to Rappers, not software developers.  Let's say that you realized that that also includes you.  In comes Enterprise Templates to save the day.  

Then there's his discussion on Visual Source Safe.  Yes, we all know how to use it 'correctly' right?  Since he without sin is the only one allowed to cast the first stone, I'm going to just quietly move on and leave it at - this really is a great section even if you think you're using VSS Correctly (and I really doubt that you are).

Then there's testing of your stuff.  Think you test 'correctly'?  Ok, even if you create unit tests and do all the things John Robbins tells you to, I bet you're missing a few things.  Have you confirmed that all your apps are permissioned correctly?  Do you know how you app works at each tier?  Where the bottlenecks really are?  After all, spending a bunch of money on another processor won't fix the problem if that's not the bottleneck - and you don't need to spend a few thousand dollars to look dumb - I'll be glad to show you how to do that for a few hundred.  What about if you were told that you're app needed to scale over a server farm?  Any ideas about how you'd verify baselines and make sure all was well in that case?  You will after reading this book.

Deploying your applications.... Yep, there's nothing to it right? Well, what about deploying a REAL n-Tier app, one running in  a clustered environment, or simply one that uses an application server, a web server, a database server and a 'smart' client?  As someone who's struggled setting up remoting for more hours than I care to discuss, this part pays for itself.  After all, you probably aren't going to be able to head to every client site and set up each piece if your application enjoys much success.

After going through all of this, they go through some great examples which tie it all together.  All in all the book finished up at just under 1,000 pages, and unlike War and Peace, they all kick a33.






Writing Add-Ins for Visual Studio .NET
Writing Add-ins for Visual Studio .NET
by Les Smith
Apress Publishing