The book follows the Murach style - on the left pages there is text, on the right pages there are screen shots, code snippets, and short summaries of the text on the left. For experienced programmers it's tempting to skip the entire left pages and focus on the right pages only.
The authors found themselves in a pickle. Unlike
Java, PHP or JavaScript, C# is mostly written with an
IDE like Visual Studio. That poses an issue. If you start with explaining the IDE, you'll have to include code that readers won't understand yet. If you start with explaining the code, readers won't be able to execute it yet until the IDE is discussed. The authors have gone for the first approach, giving only a short explanation of the code at first and linking to later chapters for more details. I think they managed it pretty well, but it can still be daunting for beginners.
The book teaches the essentials so beginning C# developers can start after reading the book. However, for a book that contains 26 chapters and is over 850 pages long, it's surprising how much
isn't included. Although I can understand they have chosen to use Visual Studio as the only build tools (omitting the command line tools completely), there are still quite some language features that aren't even mentioned. To name a few:
The checked and unchecked keywords, and how to use them.The using keyword when working with resources. Instead they make the reader use more verbose try-finally structures.Attributes.Multi-threading.Pretty much the entire Framework Class Library, apart from the very basics. There isn't even a link to MSDN...
I would have preferred to have read a bit more about those subjects.
I give this book 7 out of 10 horseshoes.
---
Disclosure: I received a copy of this book from the publisher in
exchange for writing this review.
A copy of this review can be found at Amazon.co.uk.