We’re happy to announce that CLR via C#, Fourth Edition (ISBN 9780735667457) has shipped to the printer!
Written by programming expert Jeffrey Richter, a longtime consultant to the Microsoft .NET Framework team, this popular title has been fully updated for the .NET Framework 4.5 and Visual Studio 2012. Like the previous editions, this is an engaging read that provides deep insights into developing robust, reliable, and responsive apps and components. Anyone looking to sharpen and deepen their knowledge of C#—and take their career to the next level—should read this book. It’s also for those wanting a thorough understanding of the fundamentals of the .NET Framework architecture, runtime environment, and other key topics like asynchronous programming and the new Windows Runtime, as well as for programmers looking for pragmatic guidance on complex development concepts such as generics and threading.
You can download a couple of sample chapters here.
You can preorder your book here or here.
In today’s post we also share the contents and an excerpt from the Introduction.
PART I CLR BASICS CHAPTER 1 The CLR’s Execution Model CHAPTER 2 Building, Packaging, Deploying, and Administering Applications and Types CHAPTER 3 Shared Assemblies and Strongly Named Assemblies
PART II DESIGNING TYPES CHAPTER 4 Type Fundamentals CHAPTER 5 Primitive, Reference, and Value Types CHAPTER 6 Type and Member Basics CHAPTER 7 Constants and Fields CHAPTER 8 Methods CHAPTER 9 Parameters CHAPTER 10 Properties CHAPTER 11 Events CHAPTER 12 Generics CHAPTER 13 Interfaces
PART III ESSENTIAL TYPES CHAPTER 14 Chars, Strings, and Working with Text CHAPTER 15 Enumerated Types and Bit Flags CHAPTER 16 Arrays CHAPTER 17 Delegates CHAPTER 18 Custom Attributes CHAPTER 19 Nullable Value Types
PART IV CORE FACILITIES CHAPTER 20 Exceptions and State Management CHAPTER 21 The Managed Heap and Garbage Collection CHAPTER 22 CLR Hosting and AppDomains CHAPTER 23 Assembly Loading and Reflection CHAPTER 24 Runtime Serialization CHAPTER 25 Interoperating with WinRT Components
PART V THREADING CHAPTER 26 Thread Basics CHAPTER 27 Compute-Bound Asynchronous Operations CHAPTER 28 I/O-Bound Asynchronous Operations CHAPTER 29 Primitive Thread Synchronization Constructs CHAPTER 30 Hybrid Thread Synchronization Constructs
It was October 1999 when some people at Microsoft first demonstrated the Microsoft .NET Framework, the common language runtime (CLR), and the C# programming language to me. The moment I saw all of this, I was impressed and I knew that it was going to change the way I wrote software in a very significant way. I was asked to do some consulting for the team and immediately agreed. At first, I thought that the .NET Framework was an abstraction layer over the Win32 API and COM. As I invested more and more of my time into it, however, I realized that it was much bigger. In a way, it is its own operating system. It has its own memory manager, its own security system, its own file loader, its own error handling mechanism, its own application isolation boundaries (AppDomains), its own threading models, and more. This book explains all these topics (and more) so that you can effectively design and implement software applications and components for this platform.
It is October 2012 as I write this text, making it 13 years now that I’ve worked with the .NET Framework and C#. Over the 13 years, I have built all kinds of applications and, as a consultant to Microsoft, have contributed quite a bit to the .NET Framework itself. As a partner in my own company, Wintellect (http://Wintellect.com), I have worked with numerous customers to help them design software, debug software, performance-tune software, and solve issues they have with the .NET Framework. All these experiences have really helped me learn the spots that people have trouble with when trying to be productive with the .NET Framework. I have tried to sprinkle knowledge from these experiences through all the topics presented in this book.
The purpose of this book is to explain how to develop applications and reusable classes for the .NET Framework. Specifically, this means that I intend to explain how the CLR works and the facilities that it offers. I’ll also discuss various parts of the Framework Class Library (FCL). No book could fully explain the FCL—it contains literally thousands of types now, and this number continues to grow at an alarming rate. Therefore, here I’m concentrating on the core types that every developer needs to be aware of. And although this book isn’t specifically about Windows Forms, Windows Presentation Foundation (WPF), Microsoft Silverlight, XML web services, Web Forms, Microsoft ASP.NET MVC, Windows Store Apps, and so on, the technologies presented in the book are applicable to all these application types.
The book addresses Microsoft Visual Studio 2012, .NET Framework 4.5, and version 5.0 of the C# programming language. Because Microsoft tries to maintain a large degree of backward compatibility when releasing a new version of these technologies, many of the things I discuss in this book apply to earlier versions as well. All the code samples use the C# programming language as a way to demonstrate the behavior of the various facilities. But, because the CLR is usable by many programming languages, the book’s content is still quite applicable for the non-C# programmer.
What will the actual book cover look like? (I know, picky). But the two pre-order book covers on the links you provided are not the same as the image you used in this blog post. I'll get the book either way, but I'd rather get it with the nicer looking cover (on this page).
Hi, David. Those pre-order images are out of date. The cover you see here is the debut of our new Developer series cover design. Your book will indeed have this new cover design. We're glad you like it!
Awesome. Pre-ordered yesterday afternoon.
where is the download button if you provide free access?
Tagwl, not sure what you're talking about. Free access to what?
Free access to some of sample chapters!