In Effective C#, Third Edition, respected .NET expert Bill Wagner identifies 50 ways to harness the full power of the C# 6.0 language to write exceptionally robust, efficient, and well-performing code. Reflecting the growing sophistication of the C# language and its development community, Wagner has identified dozens of new ways to write better code. This edition’s new solutions include some that take advantage of generics and several that are more focused on LINQ, as well as a full chapter of advanced best practices for working with exceptions.
Wagner’s clear, practical
explanations, expert tips, and realistic code examples have made
Effective C# indispensable to hundreds of thousands of developers.
Drawing on his unsurpassed C# experience, he addresses everything
from resource management to multicore support, and reveals how to
avoid common pitfalls in the language and its .NET environment.
Learn how to choose the most effective solution when multiple
options exist, and how to write code that’s far easier to
maintain and improve. Wagner shows how and why to
Prefer implicitly typed local variables (see Item 1)
Replace string.Format() with interpolated strings (see Item 4)
Express callbacks with delegates (see Item 7)
Make the most of .NET resource management (see Item 11)
Define minimal and sufficient constraints for generics (see Item 18)
Specialize generic algorithms using runtime type checking (see Item 19)
Use delegates to define method constraints on type parameters (see Item 23)
Augment minimal interface contracts with extension methods (see Item 27)
Create composable APIs for sequences (see Item 31)
Decouple iterations from actions, predicates, and functions (see Item 32)
Prefer lambda expressions to methods (see Item 38)
Distinguish early from deferred execution (see Item 40)
Avoid capturing expensive resources (see Item 41)
Use exceptions to report method contract failures (see Item 45)
Leverage side effects in exception filters (see Item 50)
You’re already a successful C# programmer, and this book will make you an outstanding one.
Content Update Program: This book is part of the InformIT Content Update Program. As updates are made to C#, sections of this book will be updated or new sections will be added to match updates to the technologies. See inside for details.