What is .NET framework
.NET is a new technology for building modern
application that can be executed in any modern
operating system and modern devices like
.NET is the Microsoft services strategy to connect
information, people, systems, and devices through
software. Integrated across the Microsoft platform, .NET
technology provides the ability to quickly build, deploy,
manage, and use connected, security-enhanced solutions.
The .NET Framework has been designed so that it
can be used from any language, including C# as well
as C++, Visual Basic, JScript, and even older
languages such as COBOL.
(.NET is platform independent. As of now it can work
on Windows and Linux OS because MS has launched
only two JIT(Just In Time) compilers one for each
OS. If MS launches JIT compilers for other OS’s it
will be able to run in them too.)
It provides complete environment to developers for
3) Web Services
The key features of .NET framework are:
A) Base Class Library:- The base class library of .NET
framework contains rich collection of classes that are
available to developer for codes.
B)Common Language Runtime:- It is heart of .NET
framework. .NET framework provides a runtime
environment called the Common Language Runtime
or CLR.(Similar to JVM in Java).
C)Class Loader:-class loader is component of .NET
framework's runtime which loads the classes from
class library as required by MSIL.
CLR(Common Language Runtime)
• CLR provides some functionality, such as
b) exception handling
Managed & Unmanaged Code
• Managed code is the code that is executed
directly by the CLR.Therefore,the application
that are created using managed code
automatically have CLR services, such as code
access security(CAS) & automatic garbage
collection. The CLR compiles the application to
Intermediate Language(IL) code not machine
CLR perform to execute a piece of
• 1)Selecting a language compiler:
Select programming language
• 2)Compiling the code to IL code:
converting source code to IL code, language
• 3)Compiling IL code to native code:
using JIT Compiler
• 4)Executing the code:
The CLR converts CIL to native
Byte Code Native Code
Unmanaged code directly compiles to
machine code and runs on the machine where
it has compiled.
It does not have services,such as code access
security(CAS) & memory management which
are provided by the runtime.
D) Assemblies: Assemblies are the fundamental units of
deployment, version name, securities permissions etc.
An assemblies is a .NET executable program or unit
of deployment like EXE or DLL that delivered as a
When you build a C# windows or console
application, the .exe file produced is an assembly.
If you build a class library the DLL file produced is
also an assembly.
Multiple versions can be deployed side by side in
These different version can be executed at the same
time without interfering with each other.
CLR Execution Model
Operating System Services
Common Language Runtime
Life as a Visual Basic 6.0 Programmer
VB6 is popular due to its ability to build complex
user interfaces, code libraries (e.g., COM servers),
and data access logic with minimal headache.
Down back of VB6
• VB6 is that it is not a fully object-oriented language.
• For example, VB6 does not allow the programmer to
establish classical inheritance.
C# Vs JAVA
C# provides greater expressiveness & writes
performance critical code .
Operator Overloading is possible in C#, but not in
JAVA runs on any machine with JVM, whereas C#
Applets in JAVA, similar to Web Forms/Win Forms
C# Vs JAVA
In JAVA, the “lang” package is automatically
imported, whereas in C# you have to explicitly
specify “ Using System”.
There is no partial class concept in JAVA,but it
is present in C#.
.NET Framework component
A runtime environment, called the "Common
Language Runtime" (CLR) that handles memory
allocation, error trapping, and security features.
A set of extensive Framework class libraries,
written from the ground up that comprise
practically any functionality .
Two top-level development, for web applications
(ASP.NET) and regular Windows applications