Programming Books C Java PHP Python Learn more Browse Programming Books
Effective C# (Covers C# 4.0): 50 Specific Ways to Improve... and over one million other books are available for Amazon Kindle. Learn more
Buy New
$29.10
Qty:1
  • List Price: $44.99
  • Save: $15.89 (35%)
FREE Shipping on orders over $35.
In Stock.
Ships from and sold by Amazon.com.
Gift-wrap available.
Trade in your item
Get a $2.00
Gift Card.
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

Effective C# (Covers C# 4.0): 50 Specific Ways to Improve Your C# (2nd Edition) (Effective Software Development Series) Paperback – March 15, 2010

ISBN-13: 978-0321658708 ISBN-10: 0321658701 Edition: 2nd

Buy New
Price: $29.10
37 New from $24.82 26 Used from $19.02
Amazon Price New from Used from
Kindle
"Please retry"
Paperback
"Please retry"
$29.10
$24.82 $19.02
Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student


Frequently Bought Together

Effective C#  (Covers C# 4.0): 50 Specific Ways to Improve Your C# (2nd Edition) (Effective Software Development Series) + More Effective C#: 50 Specific Ways to Improve Your C# + C# in Depth, 3rd Edition
Price for all three: $101.12

Buy the selected items together

NO_CONTENT_IN_FEATURE

Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Product Details

  • Series: Effective Software Development Series
  • Paperback: 352 pages
  • Publisher: Addison-Wesley Professional; 2 edition (March 15, 2010)
  • Language: English
  • ISBN-10: 0321658701
  • ISBN-13: 978-0321658708
  • Product Dimensions: 9.1 x 7.1 x 0.8 inches
  • Shipping Weight: 1.3 pounds (View shipping rates and policies)
  • Average Customer Review: 4.3 out of 5 stars  See all reviews (40 customer reviews)
  • Amazon Best Sellers Rank: #107,175 in Books (See Top 100 in Books)

Editorial Reviews

Review

“Being an effective .NET developer requires one to have a deep understanding of the language of their choice. Wagner’s book provides the reader with that knowledge via well-reasoned arguments and insight. Whether you’re new to C# or you’ve been using it for years, you’ll learn something new when you read this book.”

–Jason Bock, Principal Consultant, Magenic

 

“If you’re at all like me, you have collected a handful of C# language pearls that have immediately transformed your abilities as a professional developer. What you hold in your hands is quite possibly the best collection of these tips that have ever been assembled. Bill has managed to exceed my wildest expectations with the latest edition in his eponymous Effective C#.

–Bill Craun, Principal Consultant, Ambassador Solutions

 

Effective C#, Second Edition, is a must-read for anyone building high performance and/or highly scalable applications. Bill has that rare and awesome ability to take an amazingly complex problem and break it down into human, digestible, and understandable chunks.”

–Josh Holmes, Architect Evangelist, Microsoft

 

“Bill has done it again. This book is a concise collection of invaluable tips for any C# developer. Learn one tip every day, and you’ll become a much better C# developer after fifty days!”

–Claudio Lassala, Lead Developer, EPS Software/CODE Magazine

 

“A fountain of knowledge and understanding of the C# language. Bill gives insight to what happens under the covers of the .NET runtime based on what you write in your code and teaches pragmatic practices that lead to cleaner, easier to write, and more understandable code. A great mix of tips, tricks, and deep understanding–including things true since C# 1.0 up through new capabilities in C# 4.0–that every C# developer should read.”

–Brian Noyes, Chief Architect, IDesign Inc. (www.idesign.net)

 

Effective C# is a must-have for every C# developer. Period. Its pragmatic advice on code design is invaluable.”

–Shawn Wildermuth, Microsoft MVP (C#), Author, Trainer, and Speaker

 

“In this book Bill Wagner provides practical explanations of how to use the most important features in the C# language. His deep knowledge and sophisticated communication skills illuminate the new features in C# so that you can use them to write programs that are more concise and easier to maintain.”

–Charlie Calvert, Microsoft C# Community Program Manager

About the Author

With more than twenty years of experience, Bill Wagner, SRT Solutions cofounder, is a recognized expert in software design and engineering, specializing in C#, .NET, and the Azure platform. He serves as Michigan’s Regional Director for Microsoft and is a multiyear winner of Microsoft’s MVP award. An internationally recognized writer, Bill is the author of the first edition of this book and More Effective C# (Addison-Wesley, 2009) and currently writes a column on the Microsoft C# Developer Center. Bill earned a B.S. in computer science from the University of Illinois at Champaign-Urbana.


More About the Authors

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

Before this book, I know enough to get things done fast.
antonius lin
My copy of Effective C++ by Scott Meyers (1998) is well worn, even though I had many good C++ books when I bought that copy.
dotsnail
I would recommend this book to any serious programmer who wants to expand the scope of his/her understanding of C#.
CincyProgrammer

Most Helpful Customer Reviews

21 of 22 people found the following review helpful By S. Anderson on April 27, 2010
Format: Paperback Verified Purchase
I have both editions of "Effective C#". The older, first edition did not have lambda expressions, LINQ, or generics (though it hinted at generics towards the end). In the second edition, tips (called "Items") that have since fallen out of practice are weeded out and are replaced with fresh concepts from .NET 2.0, through 4.0.

The items are written in a very clear manner. Most of the figures are illustrative of the concepts. Some of the pictures aren't quite as clear as they could be (.NET's Garbage Collector sticks out in my mind - Bill! read some Tufte! :) but for the most part, each item gave a firm understanding. I could read the first and last paragraph of each item to get a clear bird's eye explanation. Later, I would pore over the details with a highlighter and come away enlightened.

This book has a sister - "More Effective C#". This was released PRIOR to "Effective C# - Second Edition". I own that copy too, and it's dog-eared by now. The two books go together like peas and carrots, though "More Effective C#" touches on more advanced .NET 3.0 concepts. "More Effective C#"'s treatment of "yield return", dependency injection, and composition in the third chapter alone are inspiring.

If you really want to go all out, I'd recommend getting "C# in Depth" by John Skeet. There's a new edition coming out in the summer of 2010. Skeet's book will bring the reader up to speed on the advancements of C# in .NET 3.0 (and soon 4.0) without giving them any specific tips. The "Effective C#" series will give the reader specific tips without bringing anybody up to speed.

Also, the author is a cool guy. I emailed him back in 2009 with questions about the first edition and he brought me up to speed by responding on his blog. You are encouraged to give him feedback.

I consider "Effective C#" as one of the first books I reach when I want to brush up on my skill set.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
39 of 46 people found the following review helpful By James Daniel on August 4, 2011
Format: Paperback Verified Purchase
I should be clear, I am not criticizing this book as being "bad", but it turns out to have been the least useful C# book I've purchased. This is admittedly in part due to my own preferences and perceptions about what I need from various C# books.

There is a quote from Alice in Wonderland that I find quite applicable here:
Alice: Would you tell me, please, which way I ought to go from here?
The Cat: That depends a good deal on where you want to get to.

This quote kept coming to mind as I read through all 50 tips. They aren't really tips so much as, well, good ideas, assuming what the author is describing is what you want to do. If it isn't what you want to do, any given tip is either not applicable, or actually a bad idea.

I found myself thinking, about each tip, one of three things:
1) Well, yes, of course, that's a good best practice. For most of these, I already knew that. The only one that impressed me was using readonly vs const: it was a good overall explanation of how const can backfire.
2) Um, no, that really isn't true, though a lot of people think it is. In particular his discussion of StringBuilder vs string concatenation was much less enlightening than googling for the topic and reading useful forum/blog posts.
3) Um, I guess that's a good idea, assuming that's what you intend to do in the first place. (Most of the book fit into this category for me.)

So I find myself reading tips that are either really obvious, or I believe they're wrong or slightly misinformed, or they really don't apply to anything I need to do at all. The author appears to use C# mostly to write APIs that would be used generally by others, e.g., more on the "web service" side than the "web application" side.
Read more ›
4 Comments Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
35 of 43 people found the following review helpful By Greg Grundy on July 12, 2011
Format: Kindle Edition Verified Purchase
The Kindle edition uses different font weights so that the text is shown differently from the code.
a) A normal black for the text; and
b) a completely invisible grey for the code.
If you have any desire to actually see the code in this book, don't bother with the Kindle edition.
The conversion was very shoddy.
6 Comments Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
2 of 2 people found the following review helpful By D. Suilmann on December 31, 2012
Format: Kindle Edition Verified Purchase
First, of all, I read a lot of code... co-workers, Code Project, Open Source, blogs, books, etc. Books like this are a significant cut above the average source code uploaded to the internet, but you still need a critical eye. While I don't take issue with any of the advice, its importance to your daily coding will vary quite a bit. Bottom line is that I'd recommend this book, but make sure you have plenty of other references.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
2 of 2 people found the following review helpful By Arvind on October 30, 2010
Format: Paperback
Each tip in the book will help you understand the various different internals of the .Net framework and help you write cleaner , easier and performant code.

This is an easy read , take tip a day and you will be done in no time.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
3 of 4 people found the following review helpful By antonius lin on October 5, 2010
Format: Kindle Edition
There's getting things done; there's best practices; then there's effectiveness.
Before this book, I know enough to get things done fast. And of course, as a seasoned developer, I've followed best-practices. But best practices are typically just conventional wisdom where enough (smart) people do so that it takes a life of its own. But this book isn't /just/ that. If it were just a book about best practices, we'd be enough to look at the table of contents without reading the entire book.

I never judge a book by its cover, but I do by its TOC. This book's TOC is eerily similar (and many orders of magnitude better) than the simple guidelines I give to my development team. What I could only do at the surface by "logic" and conventional wisdom, Bill Wagner did with in-depth understanding in the entirety of the book.

Not only this old dog learned new tricks, I did so while simultaneously understanding why those are the tricks to learn.

A little bit of my background to understand this last part of my comment: I have heavy emphasis in data-warehousing, mining and BI processing regularly processing tens of millions of records. For anyone with similar background, except for a few high-level use cases, OO is practically useless in data processing due to its higher-level language constructs. So taking the part about LINQ as an example (Item#8,35,36), though I use LINQ in my OO duties, with all due respect to C# language designer, all these times I've only just regarded it as a lame attempt by OO programmers to /borrow/ the expressiveness of query language syntax exactly for the purpose described in the book: to clean-up those combos of unwieldy looping constructs and ifs.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Customer Images

Most Recent Customer Reviews


What Other Items Do Customers Buy After Viewing This Item?