Pro C#2010 and the .NET 4 Platform (book)
Posted: Wed Aug 04, 2010 3:56 am
What an amazing book! I have worked with C# for years, but only considered myself an intermediate user. However, after thumbing through this book at the book store I was impressed by how in-depth it is and picked it up. I just finished it a few days ago, cover-to-cover (it is around 1500 pages). I was also wanting to get up-to-date with C# 2010 and .NET 4, as I had previously only used .NET 2.0 and 3.5 (aka C# 2005 and 2008).
This book goes far deeper into C# and .NET than any other I have ever read. It is also written for at least fairly competent developers, so there are no entire chapters discussing what a variable is, or how to use a for loop. Although these things are discussed, and their syntax are shown, the book moves at a brisk pace that should make it quickly clear that it is for established developers. In fact, you really need to feel comfortable with OO programming before picking up this mammoth book, including the three pillars (encapsulation, inheritance and polymorphism). It however is not a requirement to already understand generics, interfaces, delegates, events, and other C# specifics because they are fully discussed. This book dives deep into first C#, then into the .NET Base Class Library itself, where it spends most of the text although it also includes chapters on ADO.NET, Linq, WCF, WF, WPF, ASP.NET and Silverlight. You get at least a taste of almost everything .NET has to offer from this one book and that is good for someone getting into C# without a clear idea of what they want to do with it. About the only major .NET technology that is not covered is XNA, but that is understandable considering that this is a book designed for professional software engineers.
About the only downside to this book is a dark-lining to its most major strength: the breadth. At times the author goes almost too deep into some topics which can obscure the true point of a section, which is to learn the strategies and techniques to deal with the applicable aspect of C# and .NET. However, if you have an inquisitive nature and want to know everything, right down to exactly how the .NET runtime handles Garbage Collection (and even some of the jargon for the GC algorithm!), this book will be perfect for you.
In all, there is nothing else like this book on the market today; definitely not for C#, and most likely for very few other languages if any. If finished cover-to-cover, it will be hard for .NET to stump you in the future, and it will try. If you have a week or more to sit down and truly absorb this book, you will surely come to know C# intimately and will be a better programmer for it.
5/5
This book goes far deeper into C# and .NET than any other I have ever read. It is also written for at least fairly competent developers, so there are no entire chapters discussing what a variable is, or how to use a for loop. Although these things are discussed, and their syntax are shown, the book moves at a brisk pace that should make it quickly clear that it is for established developers. In fact, you really need to feel comfortable with OO programming before picking up this mammoth book, including the three pillars (encapsulation, inheritance and polymorphism). It however is not a requirement to already understand generics, interfaces, delegates, events, and other C# specifics because they are fully discussed. This book dives deep into first C#, then into the .NET Base Class Library itself, where it spends most of the text although it also includes chapters on ADO.NET, Linq, WCF, WF, WPF, ASP.NET and Silverlight. You get at least a taste of almost everything .NET has to offer from this one book and that is good for someone getting into C# without a clear idea of what they want to do with it. About the only major .NET technology that is not covered is XNA, but that is understandable considering that this is a book designed for professional software engineers.
About the only downside to this book is a dark-lining to its most major strength: the breadth. At times the author goes almost too deep into some topics which can obscure the true point of a section, which is to learn the strategies and techniques to deal with the applicable aspect of C# and .NET. However, if you have an inquisitive nature and want to know everything, right down to exactly how the .NET runtime handles Garbage Collection (and even some of the jargon for the GC algorithm!), this book will be perfect for you.
In all, there is nothing else like this book on the market today; definitely not for C#, and most likely for very few other languages if any. If finished cover-to-cover, it will be hard for .NET to stump you in the future, and it will try. If you have a week or more to sit down and truly absorb this book, you will surely come to know C# intimately and will be a better programmer for it.
5/5