|Visual C# Tutorials|
|.NET Framework Tutorials|
|© 2006 Wiley Publishing, Inc.|
|This tutorial—.NET Architecture—is from Professional C# 2005, 2nd edition, by Christian Nagel, Bill Evjen, Jay Glynn, Morgan Skinner, Karli Watson, and Allen Jones. Copyright © 2006 Wiley Publishing, Inc. All rights reserved. This article is reproduced by permission. This tutorial has been edited especially for C# Online.NET. Read the book review!|
Throughout this book, we emphasize that the C# language cannot be viewed in isolation, but must be considered in parallel with the .NET Framework. The C# compiler specifically targets .NET, which means that all code written in C# will always run within the .NET Framework. This has two important consequences for the C# language:
- The architecture and methodologies of C# reflect the underlying methodologies of .NET.
- In many cases, specific language features of C# actually depend upon features of .NET, or of the .NET base classes.
Because of this dependence, it is important to gain some understanding of the architecture and methodology of .NET before you begin C# programming. That is the purpose of this chapter.
This chapter begins by going over what happens when all code (including C#) that targets .NET is compiled and run. Once you have this broad overview, you take a more detailed look at the Microsoft Intermediate Language (MSIL or simply IL), the assembly language that all compiled code ends up in on .NET. In particular, you see how IL, in partnership with the Common Type System (CTS) and Common Language Specification (CLS), works to give you interoperability between languages that target .NET. This chapter also discusses where common languages (including Visual Basic and C++) fit into .NET.
Next, you move on to examine some of the other features of .NET, including assemblies, namespaces, and the .NET base classes. The chapter finishes with a brief look at the kinds of applications you can create as a C# developer.