REVIEW - Accelerated C#


Accelerated C#


Trey Nash



Apress (2006)




Paul Grenyer


February 2007



I was expecting this book to be a lot like Andy Koenig and Barbara Moo's Accelerated C++, but for C#. It bears almost no resemblance at all which, although disappointing, doesn't make this a bad book. Well, not all of it anyway.

I found the first three chapters dull and boring. This was probably because I've read a number of introductory books on C# over the last few months and usually look forward to getting straight into some code (just like in Accelerated C++), rather than going over the details of .Net. These details are important, but do they really require 3 chapters over 33 pages?

Chapter 4, Classes, Structs and Objects, is where it all starts happening. From this point on the book is informative, detailed in a good way and interesting. The chapter on interfaces and contracts is particularly good, with some emphasis on how interfaces define contracts.

This book, like so many others, mentions the singleton pattern. I'll begrudgingly permit the suggestion that there's nothing intrinsically evil in "mentioning" singleton. However, yet again there is absolutely no mention of the downside of using the singleton pattern. When you consider that in the view of many of the best developers these downsides are considered so bad that singletons are avoided at all costs, this is a fairly large flaw in the book.

The final chapter is entitled "In Search of C# Canonical Forms". This is 50+ pages of effective C# type items. The item that sticks out as being wrong is the suggestion that using the NVI (Non-Virtual Interface) interface is a good thing. Some people, including Herb Sutter, agree that NVI is a good thing. Many of the rest of us think it adds unnecessary code overhead and the need for strangely named protected methods. Again, only one side of the argument is given.

I think that overall this is a good book. The author knows his stuff and is good at presenting it for the most part. Personally I would like to see the first three chapters reworked and shortened, the singleton pattern either dropped or both sides of the argument given and the final chapter replaced with a reference to Wagner's Effective C#.

Book cover image courtesy of Open Library.

Your Privacy

By clicking "Accept Non-Essential Cookies" you agree ACCU can store non-essential cookies on your device and disclose information in accordance with our Privacy Policy and Cookie Policy.

Current Setting: Non-Essential Cookies REJECTED

By clicking "Include Third Party Content" you agree ACCU can forward your IP address to third-party sites (such as YouTube) to enhance the information presented on this site, and that third-party sites may store cookies on your device.

Current Setting: Third Party Content EXCLUDED

Settings can be changed at any time from the Cookie Policy page.