Book Review: Practical .NET2 and C#2

Practical .NET2 and C#2, $59.95
by Patrick Smacchia
Paradoxal Press, 2006
873 pages
ISBN 0-97661322-0
http://www.amazon.com/gp/product/0976613220

Practical .NET2 and C#2 offers a wide-ranging look at the current iteration of the .NET platform. The ideal target reader would already be familiar with computer science concepts and programming, and be looking to understand what's going on in Microsoft's world, particularly when it comes to writing C# code. Patrick is clearly deeply familiar with the Framework, and while no one can look into every corner of that heap of code in a single book, he does illuminate quite a number of interesting pieces.

The book is divided into three major parts. The first part discusses the platform itself, beginning with a look at the basic notions of assemblies and modules, then proceeding through build issuesand the CLR to talk about threading, security, reflection, and COM interop. Part II, about the C# language, is probably the strongest part of the book. The chapters on the type system and on classes and objects are strong, and the discussions of generics, anonymous methods, unsafe code, iterators, and other language features are clear and full of examples (the book has nearly 650 examples, all of which are available from the publisher's Web site). Finally, Part III is about the .NET Framework itself, including (among other things) chapters on collections, streams, ADO.NET 2.0, transactions, XML, and remoting.

While the book does not limit itself to .NET 2.0 features, about half of the material is on the new 2.0 stuff, so it's clearly aimed at the upgrade market.

Alas, an excellent work from the technical point of view is hindered by having been self-published. It's clear that English is not the author's native language, and nearly every page includes spelling or grammatical errors that would have been caught and fixed by a professional copy editor. Depending on the reader's attitude towards the language, this can be either a minor nuisance or a serious flaw that makes reading much harder than it should be.

Mike Gunderloy is the lead developer for Larkware and author of numerous books and articles on programming topics.

Published April 26, 2006