Professional Documents
Culture Documents
1 - Framework PDF
1 - Framework PDF
Microsoft.NET
Framework
by Sandeep Soni
.NET Enterprise Vision
Users
Any device,
Any place,
Any time
XML Web
Services
Integrate business
Authentication applications and
Scheduling processes
Notification
Back Office
Heterogeneous
application and
server
infrastructure
Customer Sales
ERP & Billing Service
Category of Programmers
System Programmers – One who programs
directly for a given hardware eg: Device Drivers
or extremely low level o/p services.
Application Programmers – One who programs
applications used by people for their
requirements – eg: Calculator, Calendar, MS-
Office like packages, Accounting Packages etc…
.NET is for Application programming and not for
System programming.
Definitions
Assembly Code
Operating System
C/ C++ Applications
What is .NET?
C++ C# VB Perl J# …
ASP .NET Windows
Web Forms Web Services
Forms
Mobile Internet Toolkit
Operating System
TYPES OF MS.NET APPLICATION
Language Independent.
Completely Object Oriented.
Most of the types presented by the .NET base
class library are fully extensible, allowing you to
build types that incorporate your own
functionality
Packaged with .NET Framework in the form of
DLL files.
Well optimized for performance
Base Class Library includes
Before
installation or the
first time each
Execution method is called
Native JIT
Code Compiler
PE – Portable Executable
.assembly MyAssembly {}
.class MyApp
{
.method static void Main()
{
.entrypoint
ldstr Hello, IL!"
call void System.Console::WriteLine("Hello")
ret
}
}
Metadata
Language
Source Language Compiler Portable Executable
Code (MSIL - Binary Format)
ILASM.EXE
Reverse Engineering
ILDASM.EXE
MSIL
(Text Format)
COMMON
LANGUAGE RUNTIME
(CLR)
What is the Difference between
Street DOG
and
Pet DOG?
Managed Code
Code Execution
Common Type System (CTS)
Automatic Memory Management
JIT Compiler
Garbage Collector
Security Manager
Class Loader
Interoperate with COM Components and DLLs
Common Type System
The common Type System defines how types are
declared, used, and managed in the runtime, and is
also an important part of the runtime's support for
cross-language integration, type safety and high
performance applications.
Supported Types
Classes
Structures
Enumerations
Interfaces
Delegates
Automatic Memory Management
The CLR manages memory for managed code
All allocations of objects and buffers made from a
Managed Heap
Unused objects and buffers are cleaned up
automatically through Garbage Collection
Some of the worst bugs in software development are
not possible with managed code
Memory Leakages
Dangling Pointers
Reading of uninitialized variables
Pointerless environment
JIT Compiler
Mono Project
Open Source C# compiler, CLR and Framework Class Library
Runs on various platforms and hardware:
Linux, Unix, FreeBSD, Windows – JIT-compiler for x86
s390, SPARC, PowerPC – interpreter for these hardware
architectures
Supports also:
ADO.NET and XML
Windows Forms (not fully)
ASP.NET
Web Services
Thank You