- Explore more great deals on thousands of titles in our Deals in Books store.
Enter your mobile number below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
Getting the download link through email is temporarily not available. Please check back later.
To get the free app, enter your mobile phone number.
CLR via C#, Second Edition (Pro Developer) Paperback – Bargain Price, March 22, 2006
ITPro.TV Video Training
Take advantage of IT courses online anywhere, anytime with ITPro.TV. Learn more.
Customers Who Viewed This Item Also Viewed
Special Offers and Product Promotions
From the Publisher
Key Book Benefits:
Delivers a thorough grounding in .NET Framework architecture, the runtime environment, and other key topics
Provides extensive code examples in Visual C#
Features authoritative, pragmatic guidance on difficult development concepts such as generics and threading
About the Author
Top Customer Reviews
Most .NET programming books are language centric. The capabilities of the CLR are implied based on the description of the language. Jeffery Richter's book is CLR centric. It describes what the CLR can do and how it does it. C# is used to provide practical examples of how to direct the CLR.
The book clearly and efficiently presents vital information that you'd spends days trying to discover by either pouring over MSDN or writing test applications. Highlights include:
* how source code is converted to IL, stored, managed, and executed
* a description of the code metadata available at run time and how it is used
* how data is classified, organized, and managed
* a description of the members that make up a class (fields, methods, etc.)
* how to handle exceptions
* how garbage collection works
* how reflection works
* how to write multi-threaded applications
Throughout the book there are many warnings about pitfalls and gotchas. The execution efficiency of different approaches is explained for many situations.
I urge any .NET developer who doesn't really understand the CLR to read this book.
I really enjoyed the numerous digressions about reasons why MS engineers designed the CLR and the Framework the way it is. For example you'll find answers to tricky questions such as:
Why the C# compiler uses a callvirt IL instruction (and not a call IL instruction) when calling a non-virtual instance method?
What are the rare cases when you should consider using the Explicit Interface Method Implementation? (EIMI)
How the underlying processor architecture and volatile memory access are related in the CLR sphere?
How .NET framework classes with many events such as System.Windows.Forms.Control are designed to save memory at runtime?
And many many many more.
I also liked the fact that J.Richter is one of the very few who has enough knowledge on the subject to criticize some design choices made by MS. Often some alternatives for future .NET releases are proposed.
Clearly, if you are a beginner this is not the first .NET book you should read. But if your goal is to become a.NET expert, then know that you'll end up by reading this book.
A couple of observations:
1. An experienced developer will benefit more from the content that someone with less experience or someone that is new to .NET. This book covers a lot of fundamentals, but you will learn more if you have time writing code in C#/.NET 2.0.
2. The factual content is quite useful, and most other books don't even come close to this. In addition to the facts, Jeff injects some of his opinion. An experienced developer will recognize these segments as opinion and reconcile that with the realities of their own work environment.
For example, Jeff prefers using the formal CLR syntax for primitive types over the C# shorthand (e.g., "Int32" instead of "int"). This of course is a matter of preference, and will most likely be determined by the coding styles and practices at your workplace.
Jeff also does not like Properties, and wishes that Microsoft had not included them as part of the framework. Again, an experienced developer will probably not read this and immediately stop using properties. It is not inconceivable however, that an inexperienced developer may read it and develop a bias against properties, something that may not be advisable.
In his books, you would find information where you wouldnt find in any other place. You would also find information you can find elsewhere, but not as clear as his. He has the advantage of working closely with Microsoft and consulting with the .NET team, but I would say he would be a great author and teacher even without that advantage.
As about this book, it should not be your first C# book. I suggest you get beginner's C# book first (if you dont know any C#), I suggest Jesse Liberty's book, and then come to this book. You would get a tremendous advantage over people who havent read this book and your understanding of the building blocks of .NET platform would be in depth. His chapters on Threading alone is worth the price of the book. This book is an absolute pleasure to read, just like any other book from Richter. Grab your copy today itself ! If there really is a 5 star book, this one is it.
Nobody writes like Richter, nobody.
Most Recent Customer Reviews
the first edition was better. this edition is more about Jeffery Richter fluffing his feathers than it is about the CLR... Read morePublished 11 months ago by Pogo
Very good book, delivers the information to the deepest details of the platform. If you write highly scalable software and want to know how your code will fail miserably, the... Read morePublished on November 10, 2013 by fmcf
So perfectly written such that anyone could become a clr expert. I enjoy It so much I read it over and over for funPublished on March 8, 2013 by Jon B Woo
This book gave me a deeper understanding of how C# relates to the CLR. It was well written, understandable, and provided code examples that I could try on my own. Read morePublished on October 15, 2012 by StewShack.com
The title really isn't completely honest...while we get a little ILDasm IL code, this text will not replace Lidin's book on IL Assembler in any way. Read morePublished on October 11, 2012 by SchmidtD
It is a great book with a lot of technical details in it. The author is a pretty technical high-level guy.Published on September 20, 2012 by Jian
I read Jeffrey's past books about window programming. They were excellent jobs for explaining kernel object stuffs. This book is also an excellent stuff regarding C# and CLR. Read morePublished on July 15, 2012 by Yeoun Jae Kim
The book describes .NET2.0 internals very well. I believe this is very good to learn some basic stuff, like GC, regardless of .NET version. Hope to see the same book for .NET4.Published on April 8, 2011 by Andrei
If you are a .NET developer and haven't read this book, STOP EVERYTHING GO READ IT.Published on August 27, 2009 by Capton Siluvairajan