Book Review: C# In Depth by Jon Skeet (Manning)

Posted by: Jotekes Blog, on 28 Jun 2008 | View original | Bookmarked: 0 time(s)

Author: Jon Skeet
Publisher: Manning Publications Co.
ISBN: 1933988363
April 2008, 424 pages
http://www.manning.com/skeet/

The book focuses on C# 2 and C# 3, but goes a bit relevant things on building on C# 1. It is targeted at developers familiar with C# 1 and making the move to C# 2 and C# 3. The book is not syntax reference -like, and focuses more on the aspects and use of the language while of course, introducing the new and exciting features in C# 2 and C# 3.

 

 

 

Table of Contents

foreword xvii
preface xix
acknowledgments xxi
about this book xxiii
about the cover illustration xxviii
comments from the tech review xxix

Part 1 Preparing for the journey

1 The changing face of C# development
1.1 Evolution in action: examples of code change
1.2 A brief history of C# (and related technologies)
1.3 The .NET platform
1.4 Fully functional code in snippet form
1.5 Summary

2 Core foundations: building on C# 1
2.1 Delegates
2.2 Type system characteristics
2.3 Value types and reference types
2.4 C# 2 and 3: new features on a solid base
2.5 Summary


Part 2 C# 2: solving the issues of C# 1

3 Parameterized typing with generics
3.1 Why generics are necessary
3.2 Simple generics for everyday use
3.3 Beyond the basics
3.4 Advanced generics
3.5 Generic collection classes in .NET 2.0
3.6 Limitations of generics in C# and other languages
3.7 Summary

4 Saying nothing with nullable types
4.1 What do you do when you just don’t have a value?
4.2 System.Nullable and System.Nullable
4.3 C# 2’s syntactic sugar for nullable types
4.4 Novel uses of nullable types

5 Fast-tracked delegates
5.1 Saying goodbye to awkward delegate syntax
5.2 Method group conversions
5.3 Covariance and contravariance
5/4 Inline delegate actions with anonymous methods
5.5 Capturing variables in anonymous methods
5.6 Summary

6 Implementing iterators the easy way
6.1 C# 1: the pain of handwritten iterators
6.2 C# 2: simple iterators with yield statements
6.3 Real-life example: iterating over ranges
6.4 Pseudo-synchronous code with the Concurrency and Coordination Runtime
6.5 Summary

7 Concluding C# 2: the final features
7.1 Partial types
7.2 Static classes
7.3 Separate getter/setter property access
7.4 Namespace aliases
7.5 Pragma directives
7.6 Fixed-size buffers in unsafe code
7.7 Exposing internal members to selected assemblies
7.8 Summary

Part 3 C# 3—revolutionizing how we code

8 Cutting fluff with a smart compiler
8.1 Automatically implemented properties
8.2 Implicit typing of local variables
8.3 Simplified initialization
8.4 Implicitly typed arrays
8.5 Anonymous types
8.6 Summary

9 Lambda expressions and expression trees
9/1 Lambda expressions as delegates
9.2 Simple examples using List and events
9.3 Expression trees
9.4 Changes to type inference and overload resolution
9.5 Summary

10 Extension methods
10.1 Life before extension methods
10.2 Extension method syntax
10.3 Extension methods in .NET 3.5
10.4 Usage ideas and guidelines
10.5 Summary

11 Query expressions and LINQ to Objects
11.1 Introducing LINQ
11/2 Simple beginnings: selecting elements
11.3 Filtering and ordering a sequence
11.4 Let clauses and transparent identifiers
11.5 Joins
11.6 Groupings and continuations
11.7 Summary

12 LINQ beyond collections
12.1 LINQ to SQL
12.2 Translations using IQueryable and IQueryProvider
12.3 LINQ to DataSet
12.4 LINQ to XML
12.5 LINQ beyond .NET 3.5
12.6 Summary

13 Elegant code in the new era
13.1 The changing nature of language preferences
13.2 Delegation as the new inheritance
13.3 Readability of results over implementation
13.4 Life in a parallel universe
13.5 Farewell
 
appendix: LINQ standard query operators
index

My opinion:

This is a great book for anyone taking their first steps with C# 2 and C# 3. It's not a syntax reference book, so don't expect seeing pages after pages of endless tables describing what can be told in the documentation. In this book Jon Skeet provides deep insight into C#. His experience is nicely included in the writing as he goes on the topics with great care -  and the result is this -, a first-class book about C#.

Share this post: email it! | bookmark it! | digg it! | reddit! | kick it! | live it!

Advertisement
Free Agile Project Management Tool from Telerik
TeamPulse Community Edition helps your team effectively capture requirements, manage project plans, assign and track work, and most importantly, be continually connected with each other.
Category: C# | Other Posts: View all posts by this blogger | Report as irrelevant | View bloggers stats | Views: 1075 | Hits: 16

Similar Posts

  • September's Toolbox Column Now Online more
  • August's Toolbox Column Now Online more
  • ASP.NET Ajax in Action, 2nd edition more
  • Create custom LINQ providers fluently more
  • Converting LINQ queries from query syntax to method/operator syntax more
  • The Joy of Code Reviews more
  • My WPF Bookshelf more
  • There's No Laughing in the Bookstore! more
  • For User Group Leaders: Get free stuff from Manning Pubs more
  • C# In Depth by Jon Skeet Book Review more

News Categories

.NET | Agile | Ajax | Architecture | ASP.NET | BizTalk | C# | Certification | Data | DataGrid | DataSet | Debugger | DotNetNuke | Events | GridView | IIS | Indigo | JavaScript | Mobile | Mono | Patterns and Practices | Performance | Podcast | Refactor | Regex | Security | Sharepoint | Silverlight | Smart Client Applications | Software | SQL | VB.NET | Visual Studio | W3 | WCF | WinFx | WPF | WSE | XAML | XLinq | XML | XSD