You are on page 1of 22

.

NET Framework and


Architecture

By Sanjeev Nagaraddi
Sonal Patidar

1
Overview
 What is Microsoft .NET?
– New computing platform that simplifies application
development in the highly distributed environment
of the Internet.
– It is a protocol stack and computing model for
TCPI/IP-based, distributed computing.
– The .NET Enterprise servers are built for
interoperability from the ground up, using open
Web standards such as XML with increased
scalability and reliability.
 Primary .NET Components
– Common Language Runtime (CLR)
– .NET System Class Libraries
– ASP.NET used to create XML Web Services 2
.NET Architecture Overview

.NET Framework Elements


– A runtime engine, 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 you could ask for.
– Two top-level development "arenas" for web
applications (ASP.NET) and regular Windows
applications (Windows Forms).

3
Common Language Runtime (CLR)

CLR Architecture
– .NET applications are compiled to a common
language known as Microsoft Intermediate
Language, or "IL".
– The CLR, then, handles compiling the IL to
machine language, at which point the program is
executed.
– The CLR architecture provides expansive tool
support , simpler deployment (end of "DLL
Hell"), superior scalability, support for multiple
programming languages and a common data type
system. 4
Common Type System (CTS)

– Defines how types are declared, used, and


managed in the runtime.
– Establishes a framework that enables cross-
language integration, type safety, and high
performance code execution.
– Provides an object-oriented model that supports
the complete implementation of many
programming languages.
– Defines rules that languages must follow, which
helps ensure that objects written in different
languages can interact with each other.
5
Managed Code, Managed Data and Metadata
- Code that targets the runtime is called managed code. It
runs under “contract of cooperation” with the runtime.
Managed code must supply metadata necessary for the
runtime to provide its services. All code based on MSIL
executes as managed code.
- Objects whose lifetime are managed by the runtime are
called managed data. The runtime automatically handles
object layout and manages references to these objects,
releasing them when they are no longer being used.
-Metadata is information that describes every element
managed by the runtime: an assembly, loadable file, type,
method and so on.
6
.NET Framework Classes

System Class Library - collection of reusable types that tightly


integrate with the runtime.
– Framework classes include user interfaces (Windows
Forms (conventional Win32 apps); Web Forms (the
forms engine for ASP.NET);
– Server Controls (reusable user interface components
dwelling server-side);
– Console Applications; as well as program
interfaces—Web services which are third-party
applications available over the Internet.

7
.NET Framework Class Library

System.Web System.Windows.Forms
Services UI Design ComponentModel
Description HtmlControls
Discovery WebControls
Protocols System.Drawing
Caching Security Drawing2D Printing
Configuration SessionState Imaging Text

System.Data System.Xml
OleDb SqlClient XSLT Serialization
Common SQLTypes XPath

System
Collections IO Security Runtime
Configuration Net ServiceProcess InteropServices
Diagnostics Reflection Text Remoting
Globalization Resources Threading Serialization
.NET Framework and Tools

VB C++ C# J# …

Common Language Specification

Visual Studio .NET


ASP .NET Windows
Web Forms Web Services
Forms
Mobile Internet Toolkit

ADO .NET and XML

Base Class Library

Common Language Runtime

Operating System
Assembly
• An Assembly is a collection of types and resources
that are built to work together and form a logical
unit of functionality.
• .exe, .dll, application(only has one entry point)or a
library.
• Can reference other assemblies.
• These resources, types and references are described in
a block of data called a manifest.
• Defines a type boundary, security boundary , version
boundary.
• Can be private or shared.

10
Compilation and Execution
Compilation
Source Language Code (IL)
Assembly
Code Compiler Metadata

Native JIT
Code Compiler At installation or the
first time each
Execution method is called
Languages and Platforms Supported by .NET

 Perl  C  Windows XP
 Python  C++  Windows 2000
 COBOL  Visual Basic  Windows NT4
 Jscript  C# SP6a
 Eiffel  SmallTalk  Windows ME/98
 Oberon
 Java
 Scheme
 Haskell  Mercury
 Pascal  Oz
 ML  RPG
 Ada  Objective Caml
 APL
12
ASP.NET
ASP.NET is a set of technologies in the Microsoft .NET
framework for building Web Applications and XML Web
services. ASP.NET pages execute on the server and generate
markup such as HTML or XML that is sent to a browser.
ASP.NET pages and XML web services contain a server side
logic written in VB.NET or C#.NET.
Uses XML for data storage, configuration and manipulation.

13
ASP vs ASP.NET
• Better Language Support
• Programmable Controls
• Event Driven Programming
• XML Based Components
• User Authentication, with Accounts and Roles
• Higher Scalability
• Increased Performance - Compiled Code
• Easier Configuration and Deployment
• Not Fully ASP Compatible

14
XML Web Services
• A web service is a programmable application
component accessible via standard Web protocols
• Web services allow applications to share data and can be
called across platforms and operating systems, regardless
of programming language.
Yellow Pages for Web services UDDI
Service descriptions WSDL
Service interactions SOAP
Universal Data Format XML
Ubiquitous communications HTTP

15
SOAP (Simple Object Access Protocol)
• SOAP is an XML based object protocol for the exchange
of information in a decentralized, distributed environment.
a. Serialization format for request/response semantics
using XML and HTTP as transport
b. Extensible XML document (Envelope,
Encoding Rules, RPC)
c. Supports complex and simple types (structs, datasets,
classes)
• SCL (SOAP Contract Language)
XML document describing the location and interfaces
a particular service supports
16
.NET Security
1. Role-Based Security
a. Principal - abstraction of the user and the
roles in which it belongs.
b. Identity - represents the user on whose
behalf the code is executing.
2. Code-Access Security
a. Permissions
b. Evidence
3. Cryptography
a. Confidentiality – to protect user’s identity and data.
b. Data Integrity – to protect data from being altered.
c. Authentication – to assure that data originates from
a particular party
17
Permissions

 A permissions object represents a specific authorization, such as


access to a resource
- “permission to do something”
 A permission grant is an authorization given to an assembly
- “this code is authorized to do something”
 A permission demand is security check for corresponding grants
- “ is something permitted , else raise an exception”
- done by stack walking.

18
Pros and Cons of .NET
 Easy to use tools may  Framework runs only on
increase programmer Windows, restricting vendor
choice.
productivity.
 Users of prior MS tools and
 Strong framework for technologies face potentially
building rich GUI s steep learning curve.
 Choice of more than 20  New runtime lacks maturity.
languages to work with.  Choice of integrated
development environments is
 Tightly integrated with limited
MS operating system and  Questions persist about
enterprise server software. scalability and transaction
 Built in support for Web capability of the Windows
platform
services standards.

19
Summary
To summarize, .NET is a set of Microsoft
software technologies for connecting your
world of information, people, systems, and
devices that enables unprecedented level of
software integration through the use of
XML Web services via the internet.

20
References
 .NET Development (MSDN)
http://msdn.microsoft.com/library/default.asp?url=/nhp/De
fault.asp?contentid=28000519
 .NET FAQ
http://archive.devx.com/dotnet/resources/vsresources-5.asp
 ASP Vs ASP.NET
http://www.w3schools.com/aspnet/aspnet_vsasp.asp
 ASP.NET
http://msdn.microsoft.com/library/default.asp?url=/library/
en-us/Dndotnet/html/Techmap_webapps.asp?frame=true

21
Thank You!!

22

You might also like