Title: Microsoft 'NET Architecture
1.NET Framework and Architecture
By Sanjeev Nagaraddi Sonal
Patidar
2Overview
- 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
3.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).
4Common 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.
5Common 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.
6Managed 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.
7.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
interfacesWeb services which are third-party
applications available over the Internet.
8.NET Framework Class Library
9.NET Framework and Tools
Visual Studio .NET
Common Language Runtime
Operating System
10Assembly
- 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.
11Compilation and Execution
Compilation
At installation or the first time each method is
called
12 - Languages and Platforms Supported by .NET
- Perl
- Python
- COBOL
- Jscript
- Eiffel
- Java
- Haskell
- Pascal
- ML
- Ada
- APL
- C
- C
- Visual Basic
- C
- SmallTalk
- Oberon
- Scheme
- Mercury
- Oz
- RPG
- Objective Caml
- Windows XP
- Windows 2000
- Windows NT4 SP6a
- Windows ME/98
13ASP.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.
14ASP 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
15XML 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.
16SOAP (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
17.NET Security
- 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. - Code-Access Security
- a. Permissions
- b. Evidence
- 3. Cryptography
- a. Confidentiality to protect
users identity and data. - b. Data Integrity to
protect data from being altered. - c. Authentication to
assure that data originates from - a particular party
-
18Permissions
- 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.
19Pros and Cons of .NET
- Easy to use tools may increase programmer
productivity. - Strong framework for building rich GUI s
- Choice of more than 20 languages to work with.
- Tightly integrated with MS operating system and
enterprise server software. - Built in support for Web services standards.
- Framework runs only on Windows, restricting
vendor choice. - Users of prior MS tools and technologies face
potentially steep learning curve. - New runtime lacks maturity.
- Choice of integrated development environments is
limited - Questions persist about scalability and
transaction capability of the Windows platform
20Summary
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.
21References
- .NET Development (MSDN) http//msdn.microsoft.com/
library/default.asp?url/nhp/Default.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/defau
lt.asp?url/library/en-us/Dndotnet/html/Techmap_we
bapps.asp?frametrue
22Thank You!!