19 June 2011

C# In Depth 2nd. Ed.: A (partial) Review

I’m currently reading C# In Depth: 2nd Edition (Jon Skeet, Manning Publications), and I thought I’d share my thoughts about it so far.

I would say I’ll do this in three parts: the good, the bad, an my take, but really there’s only “the good.” 

I consider myself to be a mediocre-to-good developer.  I still have lots to learn and my code can always get better.  Hanging out on StackOverflow.com, I get to see Jon’s casual mastery of C# nearly every day.  I can only thank him for the help he’s been to me- even if he’s never actually answered one of my questions (or, at least, I don’t remember that he has, and I think that would stick with me…)

C# In Depth is the work of a master.  They say that you’ve truly mastered something- not when you understand it, but when you can communicate that understanding clearly.  By that standard, Mr. Skeet has truly mastered C#.

The book begins with a look, a retrospective if you will, of C# 1.  I, for one, noticed the fondness Mr. Skeet still holds for the old language (and, as he would point out, the BCL and CLR that went with it).  Even as he points out its flaws- which it must have, or why even bother with C#2, 3, & 4- he also takes care to explain things so clearly that one can see a huge proponent of the language.

From pointing out the flaws in C#1, the book proceeds through C#2 and its enhancements to C#3.5 (where I currently am) and will proceed to C#4.  At each level, the detail he provides about how the language actually works is quite comprehensive- or, as comprehensive as a book meant for actual consumption can be.  Moreover, his explanations and examples pointed out, quite clearly, places I could improve my own code, or explained to me the “why” of things I had taken for granted.

As a C# developer who considers myself in the “Coding 201” camp (Okay, I may have graduated to Coding 202), I cannot imagine a better technical book to have at one’s fingertips.  Where other books range (within the same book) from simple (and sometimes misguided) pedantry in text to oversimplification and hand-waving in examples, C# In Depths seems to have hit that perfect sweet-spot of the text being concise enough not to put me to sleep, and examples being robust enough to see what would actually happen.

I highly recommend you read the book, if you haven’t already.  I can virtually guarantee that it will improve your coding game as you begin to understand why some things work the way they do.

I also recommend you go (and subscribe) to his coding blog.  It’s on my must-read list.

No comments:

Post a Comment