C#'s resemblances to C++, Java, and C make it easier to learn, but there's a downside: C# programmers often continue to use older techniques when far better alternatives are available. In Effective C#, respected .NET expert Bill Wagner identifies fifty ways you can start leveraging the full power of C# in order to write faster, more efficient, and more reliable software.
Effective C# follows the format that made Effective C++ (Addison-Wesley, 1998) and Effective Java (Addison-Wesley, 2001) indispensable to hundreds of thousands of developers: clear, practical explanations, expert tips, and plenty of realistic code examples. Drawing on his unsurpassed C# experience, Wagner addresses everything from value types to assemblies, exceptions to reflection. Along the way, he shows exactly how to avoid dozens of common C# performance and reliability pitfalls. You'll learn how to:
Use both types of C# constants for efficiency and maintainability, see item 2
Use immutable data types to eliminate unnecessary error checking, see item 7
Avoid the C# function that'll practically always get you in trouble, see item 10
Minimize garbage collection, boxing, and unboxing, see items 16 and 17
Take full advantage of interfaces and delegates, see items 19 though 22
Create CLS compliant assemblies that use noncompliant C# language features, see item 30
Improve reliability and maintainability by creating small, cohesive assemblies, see item 32
Leverage the full power of .NET's runtime diagnostics, see item 36
Know when—and when not—to use reflection, see items 42 and 43
Preview the major enhancements in C# 2.0, see item 49
You're already a successful C# programmer—this book can help you become an outstanding one.
Bill Wagner is co-founder of and .NET consultant for SRT Solutions. A nationally recognized independent expert on .NET, he has been a regular contributor to ASP.NET Pro Magazine, Visual Studio Magazine, and the .NET Insight newsletter. In addition to being a Microsoft Regional Director, he is also active in the Southeast Michigan .NET User Group and the Ann Arbor Computing Society. He is author of The C# Core Language Little Black Book (The Coriolis Group, 2002).