Why 'C# in a Nutshell' belongs on your shelf
Published: 02 Jul 2002 14:41 BST

C# in a Nutshell, from O'Reilly & Associates, bills itself as "a concise and thorough reference to the language," but it actually seems more like two books -- one on C# and one on .Net class libraries. The book does not discuss C# in as much detail as other C# books, but it is an excellent resource that will appeal to many C# programmers. In fact, it will be beneficial even to developers of other .Net languages.
|
C# in a Nutshell is broken into four sections. Part 1 introduces the .Net Framework and the basics of the C# language. Part 2 explains how the language will be used, with more extensive discussions of the .Net Framework. Part 3, which is quite short, has some XML documentation, naming and coding conventions, and a discussion of the .Net tools. These three sections, taken together, make up a cohesive set of 23 chapters that could be a book itself, taking up approximately 275 pages.
Part 4 is a quick reference section, which describes the .Net Framework class libraries -- one library per chapter. This information takes up approximately 450 pages, providing a comprehensive list of the available classes in each namespace.
The first "book"
C# in a Nutshell begins with the obligatory .Net definition chapter and a look at what managed code is all about. This discussion is well written and will be useful even to those already familiar with the concepts. Next, the book moves into the basic C# syntax. While this section is helpful, it is not intended for a novice. C# in a Nutshell is definitely not an introductory book. Readers should have at least a passing knowledge of C#, if not a good level of experience with it, before tackling this book. The code examples in the early parts of the book are simple snippets of code with little explanation. This is fine for those familiar with C# but could be confusing to novice C# developers using this as their sole reference. The good news, of course, is that there is no lack of introductory books available on C#.
After examining how to create classes and showing some of the advanced C# features, the book moves on to explain common C# tasks, which are actually accomplished by using Framework classes. For example, a chapter on strings describes the built-in string type, the StringBuilder class, and the RegEx class for using regular expressions. Some of these chapters, such as those on threading and memory management, are very short. While these chapters are well written, they don't provide the level of detail that some C# programmers might need. Again, that isn't the purpose of this book, but it reinforces the fact that the first part of this book is meant for experienced C# developers.










