Product Overview
Summary
C# in Depth, Third Edition updates the best-selling second edition to cover the new features of C# 5, including the challenges of writing maintainable asynchronous code. It preserves the uniquely insightful look into the tricky areas and dusty corners of C# that only expert Jon Skeet can provide.
About this Book
If you're a .NET developer, you'll use C# whether you're building an advanced enterprise application or just slamming out a quick app. In C# 5, you can do amazing things with generics, lambda expressions, dynamic typing, LINQ, iterator blocks, and other features. But first you have to learn it in depth.
C# in Depth, Third Edition has been thoroughly revised to cover the new features of C# 5, including the subtleties of writing maintainable asynchronous code. You'll see the power of C# in action, learning how to work with high-value features that you'll be glad to have in your toolkit. And you'll learn to avoid hidden pitfalls of C# programming with the help of crystal clear explanations of behind the scenes issues.
This book assumes you've digested your first C# book and are hungry for more!
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
What's Inside
- Updated for C# 5
- The new async/await feature
- How C# works and why
About the Author
Jon Skeet is a Senior Software Engineer at Google, and a highly visible participant of newsgroups, user groups, international conferences, and the Stack Overflow Q&A site. Jon spends much of his day coding in Java, but his heart belongs to C#.
Table of Contents
- The changing face of C# development
- Core foundations: building on C# 1
- Parameterized typing with generics
- Saying nothing with nullable types
- Fast-tracked delegates
- Implementing iterators the easy way
- Concluding C# 2: the final features
- Cutting fluff with a smart compiler
- Lambda expressions and expression trees
- Extension methods
- Query expressions and LINQ to Objects
- LINQ beyond collections
- Minor changes to simplify code
- Dynamic binding in a static language
- Asynchrony with async/await
- C# 5 bonus features and closing thoughts