Wrox Professional .Net Framework
July 16, 2002
Although books on .Net topics have been around since the release of Beta 1, I've managed to put off reading them until now. Enough with
procrastination, it's time to get down to some serious .Net business.
Can I get there from here?
I'm not an expert in .Net technology. I've never programmed
in C++ and as a VB developer trying to upgrade my skills, I'm new to things
like inheritance and polymorphism. So, why should you be interested in my
opinion about a book on the .Net framework? Because odds are, you're in the
same boat as I am. Fact is, .Net is here to stay, and serious professionals who
want to continue in this business need to keep up with technology. Also, with
the economy the way it is, we can't afford to waste our personal training
resources on books that don't help us get up to speed.
In the last year, I've repeatedly been asked to write book reviews for various webzines and
newsletters. Usually, after accepting an assignment, a complimentary copy of
the book is sent to me. It's a great way to enhance my library without spending
a dime. However, when it comes to the Wrox series of .Net books, I pulled out
my wallet and made the investment myself. I toyed around with a C# book,
discussing the unfamiliar syntax with a C++ programmer friend of mine over
coffee. That was fun and enlightening, but it didn't get me any closer to being
able to create applications in Visual Studio.Net.
I figured I'd need books on several topics, so I purchased VB.Net, ADO.Net, ASP.Net and
another more detailed C# book, all published by Wrox. Being most interested in
web development, even having a project that lends itself to migration, I
finally found the time to start reading the ASP.Net book. Before I finished the
first chapter, it was obvious that I was trying to build the roof before
finishing the foundation. The authors of ASP.Net suggested that before
proceeding, it would be beneficial to get a general understanding of the .Net
framework, and of course, they had just the book for me: Professional .Net framework by Wrox.
At first I considered it a simple marketing ploy, but my desire to get up to speed as
quickly as possible prompted me to make a trip to my favorite bookstore to give
the Framework book a chance. Remember now, I consider myself a decent VB
programmer, but I feel like I've got some considerable ground to cover before I
can call myself a decent .Net developer. I was looking for a book that was
high level enough to give me the bird's eye view I needed it, but also detailed enough
to make it worth the read. Looking back, I consider the suggestion to read
Professional .Net framework the best tip I've gotten in some time. I devoured
the 700 page book in a weekend and thoroughly enjoyed the read. It's by no
means the only .Net book I need, but it is, in this programmer's opinion, the
right place to start.
What I liked about the book
This 15 chapter book has 11 authors. What this means for you
and me is that each chapter was written by an expert on that particular topic.
The publisher did a great job of synchronizing the "voice" of these various contributors,
and it reads as though written by a single author. The first two chapters give
you the bird's eye view I spoke of earlier, briefly outlining all the pieces
that make up the .Net framework. Chapters 3, 4 and 5 delve deeply into the
Common Language Runtime (CLR), explaining what's "under the hood" in far more
detail than I ever thought I needed to know.
The discussion of system classes in chapter 6 is the reason I decided to buy this book in the
first place. There's enough detail and sample code that you can walk away from
this chapter knowing how to accomplish important tasks using the base classes
exposed by the .Net framework. I especially appreciated that simple code
samples were given in VB.Net and C# syntax. Also, being exposed to C# a little
at a time is more palatable and enjoyable than reading straight through a C#
book. It's notable that although the code samples could have been created in
Notepad and compiled with the .Net framework tools, the authors repeatedly use
Visual Studio.Net, explaining features, tips and tricks along the way. Where appropriate,
instructions are given for accomplishing tasks from the command line, outside
of Visual Studio.Net.
The book next discusses architecture in .Net. Chapters 7, 8, 10 and 12 explain how to
engineer applications and how to build efficient reusable components and
controls. There's a good discussion of web services from both a high level and
detailed view, including code to get you started writing web services. The
chapter on best practices describes what I would call "processes" that make for
better programming. Version control, like that provided by Visual Source Safe,
is described in some detail, as are good general coding practices.
The book concludes with suggestions for migrating to .Net and gives two detailed case
studies with associated code. Various migration paths were considered with pros
and cons given for each. The case studies I mentioned contained more than just
code. The reader is progressively walked through the architectural overview,
functional requirements, database schema and the logic behind separating presentation
from business logic from data.
As an added bonus, there's an appendix that serves as a brief tutorial on object oriented
programming and another that lays out the .Net class library namespaces. I
found both extremely useful and I expect to be frequently flipping back to the
namespace appendix as a reference while creating my first .Net projects.
Weaknesses I can live with
Though I liked the book, it does have its weaknesses. As is
the case with all Wrox books, the source code is available for download at the
Wrox web site. I was disappointed when I unpacked the code to find that the samples
for Chapter 6 (system classes, my favorite chapter) were missing. I sent a
message to the publishers and they quickly responded, saying they were looking
into the matter. It's only been a few days, so I haven't heard back from the
authors about where to find the associated code, but by the time this article
is published, this issue will likely be resolved and I expect the code to be available.
There were several chapters that I just didn't get anything out of. Chapter 11 on .Net
remoting went totally over my head. I can usually get something out of any
chapter, no matter how foreign the idea is to me, but I just couldn't get into
it. In some cases, the C# code had fewer comments and was more difficult to
read than in other places. While a C++ programmer wouldn't probably have had
any trouble, VB guys are going to need to bribe their favorite C++ gurus with
Starbucks coffee to get it explained to them.
My only other
complaint is that the experience was over all too quick for me. Though it's not
a small book, 700 pages is a little light for a book that lists for $59.99. The
sub-1000 page size may reflect the urgency to market that the publisher and
authors no doubt felt, but that being the case, it could probably have come
with a smaller price tag.
What's the verdict?
My opinion should be obvious by now; I loved the book. My
book review was completely unsolicited. In fact, I wrote this review before I
even found a home for it. Also, it's important to note that though many people
love Wrox books for no reason other than that they are "Wrox books", my
positive feelings are based entirely on its content, and the personal benefit I
feel was extracted from reading it. I don't have the time or resources to waste on
technical books that fail to educate; neither was wasted on Professional .Net
framework. This book's a keeper!
This article originally appeared in the Smart Access Newsletter, Pinnacle Publishing, Inc. (c) All rights reserved.