Title: Distributed .NET Programming in C#
Author: Tom Barnaby
Publisher: Apress (2002)
Recently I read that Richard Hale Shaw (CEO of the Richard Hale Shaw Group) said: "Remoting is the unsung hero of .NET, and [...] will prove to be the long-run favorite for creating .NET distributed objects over Web Services."
Well, that isn't exactly the message in this book, but after reading Distributed .NET Programming in C#, I'm beginning to understand these sentiments. In my opinion this is a great book that introduces an aspect of the .NET Framework that is not yet widely understood.
This is not an in-depth reference book on .NET Remoting; that book has already been written and it's called MSDN. But neither is it a book for beginners. I've been programming exclusively in C# for almost 2 years, yet I learned a great deal more about the Framework in general and .NET Remoting specifically from reading this book. In the words of the author, this is a book "that leads the reader through a logical progression of topics while clarifying complex concepts."
In my extensive library of .NET titles, I find that most of them start with the obligatory 100-page introduction to general .NET programming and the language for which the book is targeted. Tom Barnaby also starts his book with a general introduction; but his introduction is packed with detail facts about more advanced topics that are jewels of information about using the Framework. In my opinion, the introductory sections alone are worth the read. Some of the unexpected topics covered in detail include:
- Assemblies and Manifests
- Strong Names -- GAC -- Versioning
- App Domains and Contexts
As the book moves into the meat of remoting, the author uses a very simple example consistently throughout the book. There is no attempt to show "real world" examples; but rather a simple example in all of the real-world situations. I much prefer this style to seeing long listings of sample code. But don't misunderstand me, the book is packed with examples and there is plenty of sample code available for download.
After an extensive presentation of distributed programming and additional .NET Remoting techniques, there is a fairly in-depth discussion of XML Web Services that compares and contrasts this technology with the other Remoting techniques. The remaining chapters covering COM Interop and how to leverage Component Services are just great for understanding the larger picture.
The book ends with a few more topics, specifically .NET Message Queuing and an interesting segue into what is really the final chapter, but is presented as an appendix: Data Access with ADO.NET written by Andrew Troelsen.
I think a great deal of the success of a technical book depends on hitting the correct audience. For me, this also means that as a member of the audience, I need to be at a point where I can both understand, and put to use the information I gain from the reading. On this count, for me at least, Distributed .NET Programming in C# hit the mark perfectly.
Distributed .NET Programming in C#
Table of Contents
- The Evolution of Distributed Programming
- This Is .NET
- Introduction to .NET Remoting
- Distributed Programming with .NET Remoting
- Additional Remoting Techniques
- Understanding XML Web Services
- Understanding COM Interop
- Leveraging Component Services
- .NET Message Queuing
Appendix: Data Access with ADO.NET
Rating this book based solely on what I learned from reading it, this is one of my top picks. Add to that the fact that it is also an enjoyable read--you can't go wrong.
Thanks Tom Barnaby for Distributed .NET Programming in C#. And by the way, I love the Spinal Tap quotes!
Steve Sharrock - www.AspAlliance.com/shark or www.SharkCode.com