Most helpful critical review
Couldn't be further from the truth
on June 19, 2004
I read the book cover to cover, but wish I hadn't picked it up in the first place. It turned out to be one of the worst investment of my time.
If you want to buy this book, forget it. Download the freely available C# language Speciciation, the tutorials in the spec are far better.
This book is nice up to the first 6 or 7 chapters. (That's why many people thought it was a good book, 'cuz they didn't have time to read all the chapters before making a comment)
The rest fell far short of expectation from MSPress's "Inside" titles. Its presentation on important topics like delegate, event and interface are so lousy that you'll be better off not reading them at all. (For event, it utterly failed to explain what's unique to the "event" keyword)
If you are still not convinced this is one of those rubbish titles, let me point you to a glaring example in Chapter 13, the section on User-Defined Conversion. Spend 3 to 5 minutes on it, and see if you could make heads or tails of the gibberish. Do you think any self-respecting author would allow this sort of junk to slip into his flagship title? Guess the editor must have slept on the job as well. (Remember, it's already the second edition, so no more excuse on the time-to-market stuff)
As I read on from chap 7, there was mounting doubt if the author spend nearly enough time to the basic research, and whenever I encounter some incomprehensible paragraph, my first thought would be "Tom messed up again?"
A decent book on a programming language like C#(or java) should at least cover AND differentiate 2 aspects:
1) The language: All language elements, syntax, semantics, subtle differences, with easy-to-understand, practical examples.
2) The platform: i.e.: Core functions of the Framework Class Library, how to use I/O? how to manipulate strings, dates, how to do basic sorting/searching.
For this book, it's just a muddled mix of the two, dotted with deassembled IL, and could be better renamed to "Tom's tome of study notes on C#" (you get the drift? that's right, Tom himself has a lot to learn about C#. Why not attend a training session from real giants like Jeff Richter, Tom?)