As the .NET Framework and Common Language Runtime (CLR) continue to mature in terms of platform adoption, robustness, reliability, and feature richness, developers have an increasing need to understand the foundation on top of which all managed code runs. This book looks at the underlying platform commonalities that all developers can use, regardless of language choice or development tools. This includes languages such as C#, Visual Basic, C++/CLI, and others.
You'll begin with an in-depth look at CLR fundamentals. From there, you'll review first the Base Class Libraries (BCL) and then the more advanced Framework libraries that are commonly used in most managed applications. With an abundance of working code examples and unique depth of coverage, this book will quickly get you up to speed on what the .NET Framework and CLR 2.0 have to offer.
What you will learn from this book
- Details of the CLR's architecture, including garbage collection, exceptions, just-in-time compilation, and the Common Type System
- How assemblies work and options for deployment, from executables to shared to private libraries
- Specific portions of the BCL, as well as advanced Framework libraries such as the new transaction libraries
- Advanced services of the CLR, such as the secure programming model and forms of isolation and concurrency
- How the CLR's rich metadata is used for dynamic programming and runtime code-generation
Who this book is for
This book is for developers experienced either with the Microsoft (.NET 1.x, Win32, or COM) or Java platforms who want to understand and program with the .NET Framework and CLR.
Wrox Professional guides are planned and written by working programmers to meet the real-world needs of programmers, developers, and IT professionals. Focused and relevant, they address the issues technology professionals face every day. They provide examples, practical solutions, and expert education in new technologies, all designed to help programmers do a better job.
About the Author
Joe Duffy is a program manager on the Common Language Runtime (CLR) Team at Microsoft, where he works on concurrency and parallel programming models. Prior to joining the team, he was an independent consultant, a CTO for a startup ISV, and an architect and software developer at Massachusetts-based EMC Corporation. Joe has worked professionally with native Windows (COM and Win32), Java, and the .NET Framework, and holds research interests in parallel computing, transactions, language design, and virtual machine design and implementation. He lives in Washington with his soon-to-be wife, cat, and two crazy ferrets. Joe writes frequent essays on his blog at www.bluebytesoftware.com.