Professional Documents
Culture Documents
Student Ambassador
Main Entry: ambassador Pronunciation: am-'ba-s&-d&r, &m-, im-, -"dor, -'bas-d&r Function: noun 1 : an official envoy; especially : a diplomatic agent of the highest rank accredited to a foreign government or sovereign as the resident representative of his own government or sovereign or appointed for a special and often temporary diplomatic assignment 2 a : an authorized representative or messenger b : an unofficial representative <traveling abroad as ambassadors of goodwill>
Support Campus Launch Events Support Local Field Activities Drive Awareness of MSDNAA
ASP.NET
High-productivity environment for building and running Web services
ASP.NET Data and XML Base Framework Common Language Runtime (CLR)
Operating System
Second-Tier
Second-Tier
Web Server
Web Server
Client
Client
Managed code
Code that targets the CLR Any .NET Language, including C#, Visual Basic, C++, Java, Cobol, etc.
Windows
(or other operating oystem)
IL and Metadata
All Managed executables consist of
Intermediate Language (IL) instructions Metadata
IL
CPU independent machine language Just-in-time compiled at runtime
Metadata
Structured information describes programming constructs including
Classes definitions, field and method definitions, parameter lists, return types, etc.
C# Compiler
SomeSources.exe Metadata
A Managed Application
IL
Just-in-Time Compiling
All managed code runs in native machine language However, all managed code is made up of IL and metadata The CLR JIT-compiles the IL and metadata
At execution time Executed directly by CPU
IL
Some of the worst bugs in software development are not possible with managed code
Leaked memory or objects References to freed or non-existent objects Reading of uninitialized variables
Pointerless environment
Garbage Collection
class MyClass{ void Method(){ Variable v1; Variable v2; do{ . . .
Objects A and D will be cleaned up because neither is directly or indirectly referenced by code
Visual Studio.NET
A Integrated Development Environment
To develop managed and unmanaged applications Supports C#, C++, Visual Basic, JavaScript Many useful tools and wizards
Types for
Common tasks such as collections, file IO, memory and thread management GUI and window manipulation Web form and web service applications
Assembly references are necessary for many types The SDK documentation is critical for using SDK types
Includes descriptions Often includes useful code samples Indicates namespaces and assemblies for types
Second-Tier
Second-Tier
Web Server
Web Server
Client
Client
MSIL
Source Code
Language Compiler
Assembly
Metadata
Code (IL)
Assemblies
Contains MSIL code to be executed Security boundary permissions are granted at the assembly level Type boundary all types include the assembly name they are a part of Self-describing manifest metadata that describes the types in the assembly Smallest versionable unit in the CLR Deployment unit
Just-In-Time Compiling
Assemblies are compiled to native code by a Just-In-Time (JIT) compiler Compiled assemblies include metadata No Type Libraries or Interface Definition Language (IDL)
Source Code
Language Compiler
Assembly
Metadata
Code (IL)
Native Code
JIT Compiler
Execution
Just-In-Time Compiling
All assemblies must be compiled to native code before executing JIT compilers are built into the CLR for every supported CPU architecture JIT compilers convert MSIL to native on demand Resulting native code is stored for reuse JIT compiling occurs for each method after the application is restarted
Summary
.NET Framework is a code execution platform .NET Framework consists of two primary parts: .NET Class Libraries, Common Language Runtime All CLR-compliant compilers support the common type system Managed code is object oriented Managed code is compiled to and assembly (MSIL) by language specific compiler Assemblies are compiled to native code by JIT compiler
Contact Information
Alejandro Simon Talks Web Page: http://asc0.dynup.net/dotnet E-Mail: asc0_cate@hotmail.com
Questions?