Effective C#: 50 Specific Ways to Improve Your C# Review

Effective C#: 50 Specific Ways to Improve Your C#
Average Reviews:

(More customer reviews)
Are you looking to buy Effective C#: 50 Specific Ways to Improve Your C#? Here is the right place to find the great deals. we can offer discounts of up to 90% on Effective C#: 50 Specific Ways to Improve Your C#. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Effective C#: 50 Specific Ways to Improve Your C# ReviewFULL DISCLOSURE: I know Bill Wagner pretty well, and consider him a friend. I don't think that has colored this review, but you have a right to know. (If you doubt my objectivity, consider that I have now purchased TWO copies of this book, even though I probably could have gotten one or two for free. It's worth it!)
Back when I was a C++ programmer, there was one book everyone said I simply had to read: Effective C++ by Scott Meyers. And they were right: when I read that book, I summarized it as "Here are 50 mistakes you're making in your C++ code right now, and you don't even know it." (Note: the latest edition has been expanded to 55 mistakes.) So now that I'm a C# programmer, I eagerly looked forward to Effective C# (edited by Meyers), because I wanted that same sort of "Aha!" enlightenment.
Well, Bill Wagner failed to deliver that enlightenment. But that's a good thing, actually, and something he couldn't help. But to understand why, we have to return to Scott Meyers.
After the 50 amazingly simple improvements in Effective C++, Meyers wrote More Effective C++; and I characterized that book as, "35 really deep subjects that you have to think about and understand. Some of them will apply to your work. Some of them won't. None of them will be easy. But you really have to think about them." See, Meyers covered all the simple, universal problems in his first book, making it darned hard to make any simple, obvious C++ mistakes. That meant his second book had to cover deeper design concerns, many of which apply only in particular circumstances.
And herein lies the difference for Wagner's book. See, a generation of C++ programmers learned and internalized Meyers's lessons -- including the Microsoft team who created the C# language. When they built their C++-inspired (and Java-inspired) language, they built in a lot of the safeguards and limits that Meyers advocated as a standard practice for C++. They also built in best practices from other sources. So it's my contention that the C# equivalent to Effective C++ can't really be written. The language won't allow it.
So what Wagner has written really falls somewhere between Effective C++ and More Effective C++. There are some simple "Aha!" tips; but there are a lot more deep design concerns. That's really what the C# programmer needs, after all; and that's what Wagner delivers in a very fine fashion.
Now Wagner can explain these topics better than I can, so I'm not going to try. But I do want to comment on the items I found most useful:
5. Always provide ToString(). Your maintenance and client coders will thank you.
15. Utilize using and try/finally for Resource Cleanup. And 18. Implement the Standard Dispose Pattern. .NET pretty much solves memory leaks; but memory is only the most commonly leaked resource. And in solving memory leaks, they made it harder to manage certain other resources. In these two items, Wagner shows how to do the best job you can.
I wish I could say I was following every tip in this book; but it's hard to break bad habits. Read this book before you form bad habits yourself.
Note that the original printing of this book had a lot of typos where words rantogether. I now have a copy of the second printing, where those all seem to be fixed.
Effective C#: 50 Specific Ways to Improve Your C# Overview"This book really demonstrates Bill's strengths as a writer and programmer. In a very short amount of time, he is able to present an issue, fix it and conclude it; each chapter is tight, succinct, and to the point."–Josh Holmes, Independent Contractor"The book provides a good introduction to the C# language elements from apragmatic point of view, identifying best practices along the way, and following a clear and logical progression from the basic syntax to creating components to improving your code writing skills. Since each topic is covered in short entries, it is very easy to read and you'll quickly realize the benefits of the book."–Tomas Restrepo, Microsoft MVP"The book covers the basics well, especially with respect to the decisions needed when deriving classes from System.Object. It is easy to read with examples that are clear, concise and solid. I think it will bring good value to most readers."–Rob Steel, Central Region Integration COE & Lead Architect, Microsoft"Effective C# provides the C# developer with the tools they need to rapidly grow their experience in Visual C# 2003 while also providing insight into the many improvements to the language that will be hitting a desktop near you in the form of Visual C# 2005."–Doug Holland, Precision Objects"Part of the point of the .NET Framework–and the C# Language, in particular–is to let the developer focus solving customer problems and deliver product, rather than spending hours (or even weeks) writing plumbing code. Bill Wagner's Effective C#, not only shows you what's going on behind the scenes, but shows you how to take advantage of particular C# code constructs. Written in a dispassionate style that focuses on the facts–and just the facts–of writing effective C# code, Wagner's book drills down into practices that will let you write C# applications and components that are easier to maintain as well as faster to run. I'm recommending Effective C# to all students of my .NET BootCamp and other C#-related courses."–Richard Hale Shaw, www.RichardHaleShawGroup.comC#'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 2Use immutable data types to eliminate unnecessary error checking, see item 7Avoid the C# function that'll practically always get you in trouble, see item 10Minimize garbage collection, boxing, and unboxing, see items 16 and 17Take full advantage of interfaces and delegates, see items 19 though 22Create CLS compliant assemblies that use noncompliant C# language features, see item 30Improve reliability and maintainability by creating small, cohesive assemblies, see item 32Leverage the full power of .NET's runtime diagnostics, see item 36Know when–and when not–to use reflection, see items 42 and 43Preview the major enhancements in C# 2.0, see item 49You'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).© Copyright Pearson Education. All rights reserved.

Want to learn more information about Effective C#: 50 Specific Ways to Improve Your C#?

>> Click Here to See All Customer Reviews & Ratings Now

0 comments:

Post a Comment