Rating: - A good C# book right from the horses's mouth
Although many people always want to dislike any book Microsoft publishes you have to realize one unargueable thing: It's the best source of official information, especially if you are studying towards a MS certification.
With that said I can say this book will help you learn C# but it probably isn't the best way to learn if you've never written C# or C/C++ code bofer as you might want to pick another book such as "C# Step by Step" which is alos by MS publishing.
Rating: - A great intro to a fun language
If you're looking for the Kernigan & Ritchie equivalent of C#, then look no further. Tom Archer describes the C# language concisely and accurately, and even makes comparisons to C, C++, and Java, to help those making the transition.
He describes everything: namespaces, classes, inheritance, interfaces, delegates, events, multithreading, and COM interoperability. What's great is that he does everything on the command line -- not a single Windows form, not even a message box. This allows him to focus on the language itself.
He even explains why the design team at Microsoft made certain decisions. For example, why use a garbage-collection system instead of a reference counting system? He describes the thought processes that went on at Microsoft, which is a really nice touch. His style is very easy and conversational, and I had a great time reading it.
There were a few areas which I would have liked him to explain in greater details (threading, for example), but considering that he had to learn the language while writing about it, he did a superb job.
Rating: - Very good book
This book, in my humble opinion is the best book about the C# language, period. It explains well all the aspects of the C# language, with a twist, in almost all the chapters the authors delve in IL code, to show us the real work performed by the C# compiler and to really understand what is really happening and why it's happening. If you really didn't care about performance of your applications in the managed world, this book perhaps will be an eye opener for you, rest assured. For the performance lover, the authors strive many times to increase the quality of generated IL code, leading us to be much more proficient with the C# language and far more competent. This book will teach also to love the ILDASM tool, that is if you already don't love it ... it's a great teaching aid and great tool to discover eventual tricky problems. The book have a lot of code snippets to help clarify the concepts and this aspect works very well, at least for me , it reinforced well the author's explanations, so this in conjunction with the IL snippets sprayed along the entire book is definitely a KILLER teaching aid .. The authors also are constantly comparing the language and the concepts with existing technologies like COM , MFC and C++ , this helped me a lot because my background is from these technologies, for the readers that don't have this background but have some experience don't worry because you will learn well too, for the beginners the book is a bit more head-scratching because of the constant low-level and high-level switching view, but this isn't an disadvantage, be rest assured that you have a good book to learn from and that will give you solid foundations on the C# language and prepare you to use C# in real world scenarios and with greater confidence; so I recommend this book to all levels of programmers with some programming experience. I liked all the chapters, but my favourite ones were all from Advanced C# part, like Deterministic finalization and the Dispose pattern, Pinning and memory management, Using COM from C# applications, .NET components in unmanaged code, etc, but all of them offer valuable insight in all the C# language aspects. Concerning the authors, I only talked with Tom Archer, and let' me say that the author is a extremely accessible and helpful person that tries to answer any kind of question that perhaps you had any doubt about it, even when he is terribly occupied, this a great added value to this great book, so this IS NOT that kind of book in which you are left alone in the dark if that worries you.
Rating: - Some chapters are wonderful, others aren't worth reading
1) Chapters 1 through 11 seem okay, but the rest simply don't make the grade. The chapter on Delegates and Events is too shallow, and some of the claims made by the author are totally incorrect. (for example: "an event delegate must be defined as taking two arguments") Strongly recommend skip this chapter altogether, instead, try reading through online doc, which gives a much better definition and explanation.
2) User-defined conversion example is horrible, the whole section should be better eliminated than confusing the reader.
Bottom line: the authors apparently didn't do their homework well,and just rushed out the book for marketing purposes, so watch out for errors and false statements throughout the book.
Rating: - The book is excellent for intermediate readers
The book covers C# language in detail and overview of important .Net classes. The addition of new chapters "String Handling and Regular Expressions", "File I/O with Streams", "Using .NET Components in Unmanaged Code.", .... is very informative. I liked explaining of MSIL of important example. It helped me to understand topics like Boxing, Attributes and Reflection. The quality of the example code is not very good and needs improvement. I could not find two topics in the book: Windows Forms and Databases. As a whole, the book is excellent for intermediate readers.
|