3. Code Management
3. Code Management
Section Owner:
Gurneet Singh (MVP)
Content Contributors:
Anand M (MVP)
,
C S Rajagopalan
,
G Gokulraj
,
G Arun Prakash
3.1 Introduction
We all know that there have been disparities between different languages such as VB,
VC++ and developers, who code program through these languages. The disparity lies in
terms of language features, performance, and flexibility in developing any piece of
program. Well it's a known fact that, at the end, what matters is how efficiently your
programs run on the client machine, no matter what language you use. Earlier this was
driven by compilers, which were used to compile the code written using these languages
to make it native code (processor specific).
With the release .NET framework Microsoft has driven out the disparities in such a way
that no matter whatever .NET language you use to develop .NET applications, still the
end result will be determined by .NET framework runtime and not by the language
compilers as it was happening earlier. In this tutorial we will identify some of the key
elements of the .NET framework through a simple program and concentrate on how
.NET framework Runtime addresses platform or processor specific code issues to
produce optimized code, which is native to the processor and to know how the
framework helps in managing code effectively.
Common Language Runtime (CLR)
The primary function of a runtime is to support and manage the execution of code
targeted for a language or a platform. For example, the Microsoft VC++ requires the
msvcrt60.dll that contains its core support functionality. Even languages like Java have a
run time, in the form of Java Virtual Machine.
The .Net platform also comes with a runtime that is officially called as the Common
Language Runtime or simply the CLR. The CLR is designed to support a variety of
different types of applications, from Web server applications to applications with
traditional rich Windows user interface. Though the role of the CLR is similar to its
counterparts in other languages or platforms, there are some key differences that make it
one of the major features of the .NET platform. Here are the key differences between the
.NET CLR and runtime of other languages:
·
It is a common runtime for all languages targeting the .NET platform.
·
It acts as an agent that manages code at execution time and also provides core
services such as memory management, thread management and remoting.