|
| Login | Sign up | My Wish List |
![]() | Effective C#: 50 Specific Ways to Improve Your C# (Effective Software Development Series) by Bill Wagner ISBN-10: 9780321245663 ISBN-10: 0-321-24566-0 ISBN-13: 9780321245663 ISBN-13: 978-0-321-24566-3 Paperback 2004-12-13 Addison-Wesley Professional Find Lowest Price | |
Reviews | ||
Could stand a rewrite This book would benefit greatly from a rewrite. It is often difficult to follow the authors' logic. I get the impression that this book was rushed to print. A simple example of this is the fact that all the left-hand pages are incorrectly indented so that they run into the binding of the book. Please adjust your publishing software! | ||
A must for every C# Developer This book has helped me identify and made some performance improvements to my C# software code. One thing I like about this book, is that the author cuts right to the chase in his explanations and gives excellent supporting code samples in cases where needed. | ||
Things you should know if you're serious about .Net/C# While C# is pretty easy to get up to speed with coming from a C/C++ background, the similarities can lead to costly blunders! .Net/C# is a "real" language and as such deserves the respect of any self-proclaimed professional. This book is a great resource for getting that first glimpse to advanced topics that every pro should strive for. It's an easy read and the format (recipe) lends itself very well to quick reading sessions that stick in your mind. Your coding style will invariably change for the best upon closing this book. Simply stated this book should be mandatory reading for anyone joining a .Net project but coming from a traditional language (C/C++). | ||
HOW ABOUT A C# 3.0 EDITION? Excellent book. My only complaint -- where's the new edition for the new version(s) of the framework? | ||
very worthwhile I agree with those who say that Effective C# is not for beginners. Even experienced programmers should go elsewhere for an introduction to the language and the .NET environment. While other books might serve as a comprehensive textbook for learning the rudiments, this one offers some in-depth insights into how to build solutions that are elegant, efficient, reliable, and maintainable. I also agree with those who are disappointed in the poor editing. The book is riddled with typos, especially word spacing problems. Mostly, these are little more than a minor annoyance but they make the book a really poor example of publishing quality. "Software engineering" has been described as finding the best solution for a given problem where "programming" is merely a matter of developing something that works. That's what this book is all about. Sure, there are going to be times when you don't need to build the kind of quality into your code that the author advocates. The need to get something done quickly will often outweigh issues like whether you're really getting optimal performance, whether accepted OO principles are always being followed, or whether your employing the best of all possible solutions. But this book is about how build "industrial strength" classes that can be reused without breaking or creating undue heartburn for the poor slobs who have to rely on them. Like most programming books, lots of the information is conveyed in code examples. However, this is not the book you'll want if you're going to cut-and-paste somebody's sample program and hack it into your own working version. In fact, the code examples are so brief and simple that they often seem almost pointless at first glance. As you read the explanations, which are more punchy and to-the-point than they are eloquent, you begin to grasp the essence of the principle being explored. Personally, I feel there's room for improvement in Mr. Wagner's writing style, which can be a little too concise to be really illustrative, but he does get his message across. Possibly the book's greatest strength lies in the rationale given for the recommendations offered, as opposed to the recommendations themselves. The fifty items are more than a series of "best practices" to be blindly followed whether you understand them or not. Good programming is often a matter of choosing from a set of alternatives by weighing the value of each approach, assessing trade-offs, and making intelligent decisions. That's where this book can really help. Evidently, this book carries on a tradition of "Effective" books in that it consists of a series of relatively short articles, each of which illustrates some very focused aspect of how C# code is compiled, the nature of certain .NET Framework types, and/or how the CLR operates. I, for one, think a more conventional format, where the content is broken down into longer chapters that go into major concept areas in depth might have been a better way for Mr. Wagner to share his obviously thorough knowledge of the subject. At first glance, this book gives the impression of being a set of little hints and tricks, as opposed to the serious technical book it really is. | ||