Book description
C# in Depth is a completely new book designed to propel existing C# developers to a higher level of programming skill. One simple principle drives this book: explore a few things deeply rather than offer a shallow view of the whole C# landscape. If you often find yourself wanting just a little more at the end of a typical chapter, this is the book for you. Expert author Jon Skeet dives into the C# language, plumbing new C# 2 and 3 features and probing the core C# language concepts that drive them. This unique book puts the new features into context of how C# has evolved without a lengthy rehearsal of the full C# language. C# in Depth briefly examines the history of C# and the .NET framework and reviews a few often-misunderstood C# 1 concepts that are very important as the foundation for fully exploiting C# 2 and 3. Because the book addresses C# 1 with a light touch, existing C# developers don't need to pick through the book in order to find new material to enhance their skills. This book focuses on the C# 2 and 3 versions of the language, but clearly explains where features are supported by changes in the runtime (CLR) or use new framework classes. Each feature gets a thorough explanation, along with a look on how you'd use it in real life applications. C# in Depth is both a vehicle for learning C# 2 and 3 and a reference work. Although the coverage is in-depth, the text is always accessible: You'll explore pitfalls that can trip you up, but you'll skip over gnarly details best left to the language specification. The overall effect is that readers become not just proficient in C# 2 and 3, but comfortable that they truly understand the language.
Table of contents
- Copyright
- Foreword
- Preface
- Acknowledgments
- About This Book
- About the Cover Illustration
- Comments from the Tech Review
-
1. Preparing for the journey
- 1. The changing face of C# development
-
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
-
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
-
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.5.1. Defining closures and different types of variables
- 5.5.2. Examining the behavior of captured variables
- 5.5.3. What’s the point of captured variables?
- 5.5.4. The extended lifetime of captured variables
- 5.5.5. Local variable instantiations
- 5.5.6. Mixtures of shared and distinct variables
- 5.5.7. Captured variable guidelines and summary
- 5.6. Summary
- 6. Implementing iterators the easy way
- 7. Concluding C# 2: the final features
-
3. Parameterized typing with generics
-
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
-
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
-
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
-
8. Cutting fluff with a smart compiler
- LINQ standard query operators
Product information
- Title: C# in Depth
- Author(s):
- Release date: April 2008
- Publisher(s): Manning Publications
- ISBN: 9781933988368
You might also like
video
C# in Depth, 4th Ed, Video Edition
"Jon doesn’t just explain how C# works; he explains how the whole thing holds together as …
book
40 Algorithms Every Programmer Should Know
Learn algorithms for solving classic computer science problems with this concise guide covering everything from fundamental …
book
Dependency Injection Principles, Practices, and Patterns
Dependency Injection Principles, Practices, and Patterns is a revised and expanded edition of the bestselling classic …
video
C# in Depth, 3rd Ed, Video Edition
"The definitive what, how, and why of C#." Eric Lippert, Coverity If you're a .NET developer, …