Dot NET has gone through 3 significant
phases of development:-
◦ OLE technology
◦ COM technology
◦ .NET technology
Abbreviation of Object Linking and Embedding
It enables you to create objects with one application and then
link or embed them in a second application.
Embedded objects retain their original format and links to the
application that created them.
This enabled users develop applications which requires
interoperability between various products such as MS Word
and MS Excel.
Microsoft introduced the component bases model in 1995 for
developing software programs to overcome the limitations of
the current system.
In the component based approach a program is broken into a
number of independent components where each one offers a
Each component can be developed and tested independently
and then integrated into the main system.
the com objects are created in VB using
activeX.DLL and saving the file after
then these com(components) could be used
in other projects.
DCOM is (distributed Com) with properties
set to the com that can be used as
independent components by any computer,
by incorporating the dll file with activex.
Reduces overall complexity of the
Enables distributed development
across multiple departments.
Enhance software maintainability
This provides a new level of inter operability
by compiling code into IL(intermediate
An inherent characteristic of IL code is
.Net is a new framework for developing
web-based and windows-based
applications within the Microsoft
Operating System + Hardware
VB VC++ VC# JScript …
Common Language Specification
ASP.NET: Web Services Windows
and Web Forms Forms
ADO.NET: Data and XML
Base Class Library
Common Language Runtime
Common Language Runtime
◦ Web Forms
◦ Web Services
ADO.NET, evolution of ADO
CLR is provides a number of services that
◦ Loading and execution of programs
◦ Memory isolation for applications
◦ Verification of type safety
◦ Compilation of IL into native executable code
◦ Providing metadata
◦ Memory management
◦ Enforcement of security
◦ Interoperability with other system
◦ Managing exceptions and errors
• CTS is a rich type system built into the
– Implements various types (int, double,
– And operations on those types
• CLS is a set of specifications that
language and library designers need
– This will ensure interoperability between
Code in another
Code in VB.NET Code in C#
VB.NET compiler C# compiler
.NET languages are not compiled to machine
code. They are compiled to an Intermediate
CLR accepts the IL code and recompiles it to
machine code. The recompilation is just-in-
time (JIT) meaning it is done as soon as a
function or subroutine is called.
The JIT code stays in memory for subsequent
calls. In cases where there is not enough
memory it is discarded thus making JIT process
The Common type system is a standard that
specifies how type definitions are represented
in computer memory.
It provides cross language inter operability.
NET supports two kind of coding
The code, which is developed in .NET framework,
is known as managed code.
This code is directly executed by CLR with help of
managed code execution.
Any language that is written in .NET Framework
is managed code.
Managed code uses CLR which in turns looks
after your applications by managing memory,
allowing cross - language debugging, and so on.
The code, which is developed outside .NET,
Framework is known as unmanaged code.
Applications that do not run under the control of the
CLR are said to be unmanaged, and certain languages
such as C++ can be used to write such applications,
which, for example, access low - level functions of
the operating system.
Background compatibility with code of VB, ASP and
COM are examples of unmanaged code.
Unmanaged code is executed with help of wrapper
What is Type Safety?
Type safe means preventing programs from accessing
memory outside the bounds of an object's public
Type-safe code accesses only the memory locations it is
authorized to access.
For example, type-safe code cannot directly read values
from another object's private fields or code areas.
It accesses types only in well-defined, allowable ways,
thereby preventing overrun security breaches.
Type safety helps isolate objects from each other and
therefore helps protect them from inadvertent or malicious
Languages provided by MS
◦ VB, C++, C#, J#, JScript
Third-parties are building
◦ APL, COBOL, Pascal, Eiffel, Haskell, ML, Oberon,
Perl, Python, Scheme, Smalltalk…
Development tool that contains a rich set of
productivity and debugging features
The .NET Framework
◦ Dramatically simplifies development and deployment
◦ Provides robust and secure execution environment
◦ Supports multiple programming languages
Comparison between J2EE and .NET Architectures
Java source code compiles into machine-
independent byte code
Runtime Environment : JVM
Any compliant language compiles into MSIL
Runtime environment : CLR
Both JVM and CLR ,support services, such as code
verification, memory management via garbage
collection, and code security
Cross Platform Portability
JDK should exist on target machine
Supports Windows platform
CLR should exist on target machine
Can support other platforms provided it has its
own JIT complier
Tied to Java
Supports other languages via interface
Supports any language if mapping exists from
language to IL
Can employ any number of tools
Visual Studio.NET, single IDE for building an