Page 38      All Pages  All Books
14          Chapter 1 • Introducing the Microsoft .NET Platform
Performance and Scalability
Let’s face it—there is no magic bullet that will allow a poorly designed applica­tion to scale well. What the .NET Framework is giving you are tools to make it easier to design better performing software. One big gain for Web development will come from ASP.NET’s improved support for keeping code, data, and presen­tation separate. .NET offers features for transaction handling and component pooling, but makes them easier to use than they were in previous incarnations, so more development will be likely to take advantage of them. The .NET Base Class Library has an enormous set of functionality, which means that you will have to write less basic code and spend more time refining the features and performance of your applications.
New versions of Microsoft software christened with the .NET emblem offer improved performance over earlier versions. SQL Server.NET offers quite an enhancement over earlier versions of the database engine, and other server prod­ucts offer enhanced scalability as well. When you redesign an application around the .NET Framework, take advantage of the latest advances all around and see what the results are.
Components of the .NET Architecture
As we mentioned earlier, there is a lot to the .NET Framework. In this section, we identify the individual components and describe their features and how they fit into the overall picture.
.NET Runtime
The heart of the .NET Framework is the CLR. Similar in concept to the Java Virtual Machine, it is a runtime environment that executes MSIL code. Unlike the Java environment, which is the concept of one language for all purposes, the .NET platform supports multiple programming languages through the use of the Common Language Specification, which defines the output required of com­pilers that want to target the CLR.
Managed/Unmanaged Code
Because all code targeted at the .NET platform runs with the CLR environment, it is referred to as managed code. This simply means that the execution of the code and its behavior is managed by the CLR. The metadata available with man­aged code contains the information required to allow the CLR to manage its safe

Page 38      All Pages  All Books