SlideShare a Scribd company logo
Software Development  Training Program Zeeshan Hanif
.NET Framework The .NET Framework is a new computing platform that simplifies application development.  The .NET Framework allows developers to build the following kinds of applications: Web Forms Win32 GUI Applications Win32 Console Applications etc.
VB C# C++ J# Others Common Language Specification Web Service User Interface ADO.NET:Data and XML Base Class Library Common Language Runtime (CLR) Visual Studio  .NET .NET Framework .Net Framework Class Library
.NET Framework Components Following are the major components of .NET Framework:  Common Language Specification (CLS) .Net Framework Languages .Net Framework Class Library (FCL) Common Language Runtime (CLR)
Common Language Specification (CLS) An Important goal of .Net Framework is to support multiple languages. But all languages are not created equal so it is important to agree upon a common subset that all languages will support The Common Language Specification is an agreement among languages.
Common Language Specification (CLS) The CLS defines the minimum standards that .NET languages must confirm. Common Language Specification provides a series of basic rules that are required for language integration.
.NET Framework Languages The .NET Framework is language neutral – an application written in VB.NET can access a application written in C# which also can access the application written in J# and so on. Third parties are providing additional languages (over a dozen so far) Following are few of them Python Perl Oz Mercury JScript J# SML Smalltalk Eiffel VB Pascal COBOL C# C++ APL
.Net Framework Class Library (FCL) The .NET Framework Class Library provides a collection of useful and reusable classes that can be utilized across multiple languages The classes provided by .NET Framework are object-oriented and fully extendable. All of these classes are logically grouped in to “ Namespaces ”.
FCL Namespaces System System.Net System.Threading System.Xml System.Security System.Web System.IO System.Data
Common Language Runtime (CLR) CLR is the heart of .NET Framework. CLR manages execution of .NET code and provides useful services. The basic function of CLR is to take the code generated by the C# compiler or any other compiler and converts it to the native language.
Common Language Runtime (CLR) Traditionally there are different runtime for different programming environments. Examples of runtimes include the standard C library, the Visual Basic runtime and Java Virtual Machine.
Common Type System (CTS) .NET Framework also defines CTS which defines what types are allowed to run inside the framework.  The CTS provides a wide range of types and operations that are found in many programming languages. The CTS provides a framework for cross-language integration.
Common Type System (CTS) Due to this there is no difference between  Integer  in VB.NET and  int  in C#, they are  System.Int32  according to CTS. Integer int System.Int32 VB.NET C# System.Int32 CTS Type
CTS Types bool bool Boolean Boolean Decimal decimal Decimal Decimal String* string String String _wchar_t char Char Char Object* object Object Object double double Double Double float float Single Single unsigned _int64 ulong - Uint64 unsighed int; long uint - Uint32 unsigned short ushort - Uint16 _int64 long Long Int64 int ; long int Integer Int32 short short Short Int16 signed char sbyte - SByte char byte Byte Byte Visual C++.Net C# Visual Basic.NET CTS Type
Microsoft Intermediate Language (MSIL) When a .NET application is compiled it is converted from the language it was written in (VB.NET, C#, J# etc) to a Managed Module. This Managed Module contain  MSIL  which is direct compiled form of your code and  metadata . MSIL is a low level set of instructions understood by Common Language Runtime.
Compiling Source into Managed Modules C#  Source Code VB.NET  Source Code J# Source Code C#  Compiler VB.NET  Compile r J# Compiler Managed Module MSIL and metadata Managed Module MSIL and metadata Managed Module MSIL and metadata
Structure of Managed Module Metadata MSIL Type 1 Fields Properties Methods Events Type 2 Fields Properties Methods Events
Metadata Every managed module contains metadata that describe the two things: 1.  The types (classes) and members defined in your source code. 2.  The types (classes) and members referenced by your source code. Metadata is always associated with the file that contain the IL code.
Just-in-Time compiler (JIT) Before executing on the target machine, MSIL is translated by just-in-time (JIT) compiler to native code. Some code typically will never be executed during a program run. Hence it may be more efficient to translate MSIL as needed during execution, storing the native code for reuse.
.NET Assembly The primary unit of a .NET application is the assembly. An assembly is a self describing collections of one or more managed modules and resource files. An assembly is the smallest unit of reuse, security and versioning. Assembly manifest provides information about what is contained within the assembly.
Structure of .NET Assembly Resource Files .html, .gif etc Resource Files .html, .gif etc Resource Files .html, .gif etc manifest Resource Files .html, .gif etc Metadata MSIL Type 1 Fields Properties Methods Events Type 2 Fields Properties Methods Events Metadata MSIL Type 1 Fields Properties Methods Events Type 2 Fields Properties Methods Events Metadata MSIL Type 1 Fields Properties Methods Events Type 2 Fields Properties Methods Events
Assembly Manifest Assembly manifest file contains: Assembly Identity—name and version. List of all types exposed by assembly. List of other assemblies required. List of permissions required by the assembly. List of permissions denied by the assembly. Each assembly has one and only one manifest.
Compilation and Execution  of .NET Application When you compile a .net application it is converted into managed module or MSIL (.exe or .dll) The assembly contain at lease one .exe file that has been designated as the entry point for the application.
When execution of your program begins, the  assembly is loaded into memory. At this time the CLR examines the assembly manifest and determines the requirements to run the program. Compilation and Execution – continue…
It examines security permissions requested by the assembly and compares them to the system’s security policy. If the system’s security policy does not allow the requested permissions, the application will not run If the application passes the system’s security policy, the CLR executes the code. Compilation and Execution – continue…
When execution starts, the Just-In-Time (JIT) compiler of CLR compiles the IL code into native code and now native code is loaded in memory to execute. C# MSIL Native  Code JIT Compiler Compile Run JIT Compilation and Execution – continue…
Zeeshan Hanif [email_address] [email_address]

More Related Content

What's hot (20)

PPTX
Introduction to .NET by QuontraSolutions
QUONTRASOLUTIONS
 
PPT
C Course Material0209
chameli devi group of institutions
 
PDF
Dot net-interview-questions-and-answers part i
Rakesh Joshi
 
PPTX
Dot net-interview-questions-and-answers part i
Rakesh Joshi
 
PPT
Dotnet framework
Nitu Pandey
 
PPT
Architecture of net framework
umesh patil
 
PPTX
Namespaces in C#
yogita kachve
 
PPTX
.Net Framework
MohamadKrm
 
PPSX
Introductionto .netframework by Priyanka Pinglikar
PriyankaPinglikar
 
PPT
1.Philosophy of .NET
snandagopalan2
 
PDF
Unit6
Abha Damani
 
PDF
Lesson 1 Understanding Dot Net Framework
nbaveja
 
PPT
.Net introduction by Quontra Solutions
QUONTRASOLUTIONS
 
PPTX
.Net Framework Introduction
Abhishek Sahu
 
PDF
1..Net Framework Architecture-(c#)
Shoaib Ghachi
 
PPT
Csharp
Swaraj Kumar
 
DOCX
Interview Question of Aspdotnet
MohitKumar1985
 
PDF
Dotnet basics
Mir Majid
 
PPT
Introduction to .NET Framework
Kamlesh Makvana
 
PPTX
Architecture in .net
Larry Nung
 
Introduction to .NET by QuontraSolutions
QUONTRASOLUTIONS
 
C Course Material0209
chameli devi group of institutions
 
Dot net-interview-questions-and-answers part i
Rakesh Joshi
 
Dot net-interview-questions-and-answers part i
Rakesh Joshi
 
Dotnet framework
Nitu Pandey
 
Architecture of net framework
umesh patil
 
Namespaces in C#
yogita kachve
 
.Net Framework
MohamadKrm
 
Introductionto .netframework by Priyanka Pinglikar
PriyankaPinglikar
 
1.Philosophy of .NET
snandagopalan2
 
Lesson 1 Understanding Dot Net Framework
nbaveja
 
.Net introduction by Quontra Solutions
QUONTRASOLUTIONS
 
.Net Framework Introduction
Abhishek Sahu
 
1..Net Framework Architecture-(c#)
Shoaib Ghachi
 
Csharp
Swaraj Kumar
 
Interview Question of Aspdotnet
MohitKumar1985
 
Dotnet basics
Mir Majid
 
Introduction to .NET Framework
Kamlesh Makvana
 
Architecture in .net
Larry Nung
 

Similar to C Sharp Jn (20)

PPT
Introduction to ,NET Framework
ANURAG SINGH
 
PPT
.Net framework
Viv EK
 
PDF
random-140312045902-phpapp01.pdf
PragunSinghal1
 
PPT
.Net
nidhi22jogi
 
DOC
.Net framework interview questions
Mir Majid
 
PPT
.Net Session Overview
Logu Thanigachalam
 
PPT
SynapseIndia dotnet web development architecture module
Synapseindiappsdevelopment
 
PPT
Microsoft .NET (dotnet) Framework 2003 - 2004 overview and web services…
Lorenz Lo Sauer
 
PPT
.NET Overview
Greg Sohl
 
PPTX
election survey comapny in delhi|election survey company|election survey comp...
dnnindia
 
PPT
.Netframework
Shareb Ismaeel
 
PPT
Microsoft.Net
Vishwa Mohan
 
PPT
Introduction to .net
Karthika Parthasarathy
 
PPTX
.NET Framework
vijayakumari kaliannan
 
PDF
Tutorial c#
Mohammad Faizan
 
PPT
Nakov - .NET Framework Overview - English
Svetlin Nakov
 
PPSX
Introduction to .net framework
Arun Prasad
 
PDF
Inside.Net
Ganesh Samarthyam
 
PPTX
Introduction to .net
Jaya Kumari
 
PPT
ASP.NET 01 - Introduction
Randy Connolly
 
Introduction to ,NET Framework
ANURAG SINGH
 
.Net framework
Viv EK
 
random-140312045902-phpapp01.pdf
PragunSinghal1
 
.Net framework interview questions
Mir Majid
 
.Net Session Overview
Logu Thanigachalam
 
SynapseIndia dotnet web development architecture module
Synapseindiappsdevelopment
 
Microsoft .NET (dotnet) Framework 2003 - 2004 overview and web services…
Lorenz Lo Sauer
 
.NET Overview
Greg Sohl
 
election survey comapny in delhi|election survey company|election survey comp...
dnnindia
 
.Netframework
Shareb Ismaeel
 
Microsoft.Net
Vishwa Mohan
 
Introduction to .net
Karthika Parthasarathy
 
.NET Framework
vijayakumari kaliannan
 
Tutorial c#
Mohammad Faizan
 
Nakov - .NET Framework Overview - English
Svetlin Nakov
 
Introduction to .net framework
Arun Prasad
 
Inside.Net
Ganesh Samarthyam
 
Introduction to .net
Jaya Kumari
 
ASP.NET 01 - Introduction
Randy Connolly
 
Ad

Recently uploaded (20)

PDF
How to Visualize the ​Spatio-Temporal Data Using CesiumJS​
SANGHEE SHIN
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
PDF
Hyderabad MuleSoft In-Person Meetup (June 21, 2025) Slides
Ravi Tamada
 
PDF
Understanding AI Optimization AIO, LLMO, and GEO
CoDigital
 
PDF
Automating the Geo-Referencing of Historic Aerial Photography in Flanders
Safe Software
 
PPTX
01_Approach Cyber- DORA Incident Management.pptx
FinTech Belgium
 
PDF
Redefining Work in the Age of AI - What to expect? How to prepare? Why it mat...
Malinda Kapuruge
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
PDF
Unlocking FME Flow’s Potential: Architecture Design for Modern Enterprises
Safe Software
 
PDF
Understanding The True Cost of DynamoDB Webinar
ScyllaDB
 
PPTX
Smarter Governance with AI: What Every Board Needs to Know
OnBoard
 
PPTX
Paycifi - Programmable Trust_Breakfast_PPTXT
FinTech Belgium
 
PDF
Optimizing the trajectory of a wheel loader working in short loading cycles
Reno Filla
 
PPTX
The birth and death of Stars - earth and life science
rizellemarieastrolo
 
PDF
ArcGIS Utility Network Migration - The Hunter Water Story
Safe Software
 
PDF
My Journey from CAD to BIM: A True Underdog Story
Safe Software
 
PDF
Kubernetes - Architecture & Components.pdf
geethak285
 
PDF
Next level data operations using Power Automate magic
Andries den Haan
 
PDF
Proactive Server and System Monitoring with FME: Using HTTP and System Caller...
Safe Software
 
PDF
“Scaling i.MX Applications Processors’ Native Edge AI with Discrete AI Accele...
Edge AI and Vision Alliance
 
How to Visualize the ​Spatio-Temporal Data Using CesiumJS​
SANGHEE SHIN
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
Hyderabad MuleSoft In-Person Meetup (June 21, 2025) Slides
Ravi Tamada
 
Understanding AI Optimization AIO, LLMO, and GEO
CoDigital
 
Automating the Geo-Referencing of Historic Aerial Photography in Flanders
Safe Software
 
01_Approach Cyber- DORA Incident Management.pptx
FinTech Belgium
 
Redefining Work in the Age of AI - What to expect? How to prepare? Why it mat...
Malinda Kapuruge
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
Unlocking FME Flow’s Potential: Architecture Design for Modern Enterprises
Safe Software
 
Understanding The True Cost of DynamoDB Webinar
ScyllaDB
 
Smarter Governance with AI: What Every Board Needs to Know
OnBoard
 
Paycifi - Programmable Trust_Breakfast_PPTXT
FinTech Belgium
 
Optimizing the trajectory of a wheel loader working in short loading cycles
Reno Filla
 
The birth and death of Stars - earth and life science
rizellemarieastrolo
 
ArcGIS Utility Network Migration - The Hunter Water Story
Safe Software
 
My Journey from CAD to BIM: A True Underdog Story
Safe Software
 
Kubernetes - Architecture & Components.pdf
geethak285
 
Next level data operations using Power Automate magic
Andries den Haan
 
Proactive Server and System Monitoring with FME: Using HTTP and System Caller...
Safe Software
 
“Scaling i.MX Applications Processors’ Native Edge AI with Discrete AI Accele...
Edge AI and Vision Alliance
 
Ad

C Sharp Jn

  • 1. Software Development Training Program Zeeshan Hanif
  • 2. .NET Framework The .NET Framework is a new computing platform that simplifies application development. The .NET Framework allows developers to build the following kinds of applications: Web Forms Win32 GUI Applications Win32 Console Applications etc.
  • 3. VB C# C++ J# Others Common Language Specification Web Service User Interface ADO.NET:Data and XML Base Class Library Common Language Runtime (CLR) Visual Studio .NET .NET Framework .Net Framework Class Library
  • 4. .NET Framework Components Following are the major components of .NET Framework: Common Language Specification (CLS) .Net Framework Languages .Net Framework Class Library (FCL) Common Language Runtime (CLR)
  • 5. Common Language Specification (CLS) An Important goal of .Net Framework is to support multiple languages. But all languages are not created equal so it is important to agree upon a common subset that all languages will support The Common Language Specification is an agreement among languages.
  • 6. Common Language Specification (CLS) The CLS defines the minimum standards that .NET languages must confirm. Common Language Specification provides a series of basic rules that are required for language integration.
  • 7. .NET Framework Languages The .NET Framework is language neutral – an application written in VB.NET can access a application written in C# which also can access the application written in J# and so on. Third parties are providing additional languages (over a dozen so far) Following are few of them Python Perl Oz Mercury JScript J# SML Smalltalk Eiffel VB Pascal COBOL C# C++ APL
  • 8. .Net Framework Class Library (FCL) The .NET Framework Class Library provides a collection of useful and reusable classes that can be utilized across multiple languages The classes provided by .NET Framework are object-oriented and fully extendable. All of these classes are logically grouped in to “ Namespaces ”.
  • 9. FCL Namespaces System System.Net System.Threading System.Xml System.Security System.Web System.IO System.Data
  • 10. Common Language Runtime (CLR) CLR is the heart of .NET Framework. CLR manages execution of .NET code and provides useful services. The basic function of CLR is to take the code generated by the C# compiler or any other compiler and converts it to the native language.
  • 11. Common Language Runtime (CLR) Traditionally there are different runtime for different programming environments. Examples of runtimes include the standard C library, the Visual Basic runtime and Java Virtual Machine.
  • 12. Common Type System (CTS) .NET Framework also defines CTS which defines what types are allowed to run inside the framework. The CTS provides a wide range of types and operations that are found in many programming languages. The CTS provides a framework for cross-language integration.
  • 13. Common Type System (CTS) Due to this there is no difference between Integer in VB.NET and int in C#, they are System.Int32 according to CTS. Integer int System.Int32 VB.NET C# System.Int32 CTS Type
  • 14. CTS Types bool bool Boolean Boolean Decimal decimal Decimal Decimal String* string String String _wchar_t char Char Char Object* object Object Object double double Double Double float float Single Single unsigned _int64 ulong - Uint64 unsighed int; long uint - Uint32 unsigned short ushort - Uint16 _int64 long Long Int64 int ; long int Integer Int32 short short Short Int16 signed char sbyte - SByte char byte Byte Byte Visual C++.Net C# Visual Basic.NET CTS Type
  • 15. Microsoft Intermediate Language (MSIL) When a .NET application is compiled it is converted from the language it was written in (VB.NET, C#, J# etc) to a Managed Module. This Managed Module contain MSIL which is direct compiled form of your code and metadata . MSIL is a low level set of instructions understood by Common Language Runtime.
  • 16. Compiling Source into Managed Modules C# Source Code VB.NET Source Code J# Source Code C# Compiler VB.NET Compile r J# Compiler Managed Module MSIL and metadata Managed Module MSIL and metadata Managed Module MSIL and metadata
  • 17. Structure of Managed Module Metadata MSIL Type 1 Fields Properties Methods Events Type 2 Fields Properties Methods Events
  • 18. Metadata Every managed module contains metadata that describe the two things: 1. The types (classes) and members defined in your source code. 2. The types (classes) and members referenced by your source code. Metadata is always associated with the file that contain the IL code.
  • 19. Just-in-Time compiler (JIT) Before executing on the target machine, MSIL is translated by just-in-time (JIT) compiler to native code. Some code typically will never be executed during a program run. Hence it may be more efficient to translate MSIL as needed during execution, storing the native code for reuse.
  • 20. .NET Assembly The primary unit of a .NET application is the assembly. An assembly is a self describing collections of one or more managed modules and resource files. An assembly is the smallest unit of reuse, security and versioning. Assembly manifest provides information about what is contained within the assembly.
  • 21. Structure of .NET Assembly Resource Files .html, .gif etc Resource Files .html, .gif etc Resource Files .html, .gif etc manifest Resource Files .html, .gif etc Metadata MSIL Type 1 Fields Properties Methods Events Type 2 Fields Properties Methods Events Metadata MSIL Type 1 Fields Properties Methods Events Type 2 Fields Properties Methods Events Metadata MSIL Type 1 Fields Properties Methods Events Type 2 Fields Properties Methods Events
  • 22. Assembly Manifest Assembly manifest file contains: Assembly Identity—name and version. List of all types exposed by assembly. List of other assemblies required. List of permissions required by the assembly. List of permissions denied by the assembly. Each assembly has one and only one manifest.
  • 23. Compilation and Execution of .NET Application When you compile a .net application it is converted into managed module or MSIL (.exe or .dll) The assembly contain at lease one .exe file that has been designated as the entry point for the application.
  • 24. When execution of your program begins, the assembly is loaded into memory. At this time the CLR examines the assembly manifest and determines the requirements to run the program. Compilation and Execution – continue…
  • 25. It examines security permissions requested by the assembly and compares them to the system’s security policy. If the system’s security policy does not allow the requested permissions, the application will not run If the application passes the system’s security policy, the CLR executes the code. Compilation and Execution – continue…
  • 26. When execution starts, the Just-In-Time (JIT) compiler of CLR compiles the IL code into native code and now native code is loaded in memory to execute. C# MSIL Native Code JIT Compiler Compile Run JIT Compilation and Execution – continue…
  • 27. Zeeshan Hanif [email_address] [email_address]