SlideShare a Scribd company logo
1 of 27
Software Development  Training Program Zeeshan Hanif
.NET Framework ,[object Object],[object Object],[object Object],[object Object],[object Object]
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 ,[object Object],[object Object],[object Object],[object Object],[object Object]
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 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
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

Introduction to .NET by QuontraSolutions
Introduction to .NET by QuontraSolutionsIntroduction to .NET by QuontraSolutions
Introduction to .NET by QuontraSolutionsQUONTRASOLUTIONS
 
Dot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iDot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iRakesh Joshi
 
Dot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iDot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iRakesh Joshi
 
Dotnet framework
Dotnet frameworkDotnet framework
Dotnet frameworkNitu Pandey
 
Architecture of net framework
Architecture of net frameworkArchitecture of net framework
Architecture of net frameworkumesh patil
 
.Net Framework
.Net Framework.Net Framework
.Net FrameworkMohamadKrm
 
Introductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka PinglikarIntroductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka PinglikarPriyankaPinglikar
 
Lesson 1 Understanding Dot Net Framework
Lesson 1   Understanding Dot Net FrameworkLesson 1   Understanding Dot Net Framework
Lesson 1 Understanding Dot Net Frameworknbaveja
 
.Net introduction by Quontra Solutions
.Net introduction by Quontra Solutions.Net introduction by Quontra Solutions
.Net introduction by Quontra SolutionsQUONTRASOLUTIONS
 
.Net Framework Introduction
.Net Framework Introduction.Net Framework Introduction
.Net Framework IntroductionAbhishek Sahu
 
1..Net Framework Architecture-(c#)
1..Net Framework Architecture-(c#)1..Net Framework Architecture-(c#)
1..Net Framework Architecture-(c#)Shoaib Ghachi
 
Interview Question of Aspdotnet
Interview Question of AspdotnetInterview Question of Aspdotnet
Interview Question of AspdotnetMohitKumar1985
 
Introduction to .NET Framework
Introduction to .NET FrameworkIntroduction to .NET Framework
Introduction to .NET FrameworkKamlesh Makvana
 
Architecture in .net
Architecture in .netArchitecture in .net
Architecture in .netLarry Nung
 

What's hot (20)

Introduction to .NET by QuontraSolutions
Introduction to .NET by QuontraSolutionsIntroduction to .NET by QuontraSolutions
Introduction to .NET by QuontraSolutions
 
C Course Material0209
C Course Material0209C Course Material0209
C Course Material0209
 
Dot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iDot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part i
 
Dot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part iDot net-interview-questions-and-answers part i
Dot net-interview-questions-and-answers part i
 
Dotnet framework
Dotnet frameworkDotnet framework
Dotnet framework
 
Architecture of net framework
Architecture of net frameworkArchitecture of net framework
Architecture of net framework
 
Namespaces in C#
Namespaces in C#Namespaces in C#
Namespaces in C#
 
.Net Framework
.Net Framework.Net Framework
.Net Framework
 
Introductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka PinglikarIntroductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka Pinglikar
 
1.Philosophy of .NET
1.Philosophy of .NET1.Philosophy of .NET
1.Philosophy of .NET
 
Unit6
Unit6Unit6
Unit6
 
Lesson 1 Understanding Dot Net Framework
Lesson 1   Understanding Dot Net FrameworkLesson 1   Understanding Dot Net Framework
Lesson 1 Understanding Dot Net Framework
 
.Net introduction by Quontra Solutions
.Net introduction by Quontra Solutions.Net introduction by Quontra Solutions
.Net introduction by Quontra Solutions
 
.Net Framework Introduction
.Net Framework Introduction.Net Framework Introduction
.Net Framework Introduction
 
1..Net Framework Architecture-(c#)
1..Net Framework Architecture-(c#)1..Net Framework Architecture-(c#)
1..Net Framework Architecture-(c#)
 
Csharp
CsharpCsharp
Csharp
 
Interview Question of Aspdotnet
Interview Question of AspdotnetInterview Question of Aspdotnet
Interview Question of Aspdotnet
 
Dotnet basics
Dotnet basicsDotnet basics
Dotnet basics
 
Introduction to .NET Framework
Introduction to .NET FrameworkIntroduction to .NET Framework
Introduction to .NET Framework
 
Architecture in .net
Architecture in .netArchitecture in .net
Architecture in .net
 

Similar to C Sharp Jn

election survey comapny in delhi|election survey company|election survey comp...
election survey comapny in delhi|election survey company|election survey comp...election survey comapny in delhi|election survey company|election survey comp...
election survey comapny in delhi|election survey company|election survey comp...dnnindia
 
Chapter1_Part1.pptx
Chapter1_Part1.pptxChapter1_Part1.pptx
Chapter1_Part1.pptxRaajzKoirala
 
Microsoft .NET Platform
Microsoft .NET PlatformMicrosoft .NET Platform
Microsoft .NET PlatformPeter R. Egli
 
.Net overview|Introduction Of .net
.Net overview|Introduction Of .net.Net overview|Introduction Of .net
.Net overview|Introduction Of .netpinky singh
 
random-140312045902-phpapp01.pdf
random-140312045902-phpapp01.pdfrandom-140312045902-phpapp01.pdf
random-140312045902-phpapp01.pdfPragunSinghal1
 
SynapseIndia dotnet web development architecture module
SynapseIndia dotnet web development architecture moduleSynapseIndia dotnet web development architecture module
SynapseIndia dotnet web development architecture moduleSynapseindiappsdevelopment
 
.Net framework interview questions
.Net framework interview questions.Net framework interview questions
.Net framework interview questionsMir Majid
 
ASP.NET 01 - Introduction
ASP.NET 01 - IntroductionASP.NET 01 - Introduction
ASP.NET 01 - IntroductionRandy Connolly
 
.NET Core, ASP.NET Core Course, Session 3
.NET Core, ASP.NET Core Course, Session 3.NET Core, ASP.NET Core Course, Session 3
.NET Core, ASP.NET Core Course, Session 3aminmesbahi
 

Similar to C Sharp Jn (20)

election survey comapny in delhi|election survey company|election survey comp...
election survey comapny in delhi|election survey company|election survey comp...election survey comapny in delhi|election survey company|election survey comp...
election survey comapny in delhi|election survey company|election survey comp...
 
Chapter1_Part1.pptx
Chapter1_Part1.pptxChapter1_Part1.pptx
Chapter1_Part1.pptx
 
Microsoft .NET Platform
Microsoft .NET PlatformMicrosoft .NET Platform
Microsoft .NET Platform
 
.Net Session Overview
.Net Session Overview.Net Session Overview
.Net Session Overview
 
.Net overview|Introduction Of .net
.Net overview|Introduction Of .net.Net overview|Introduction Of .net
.Net overview|Introduction Of .net
 
random-140312045902-phpapp01.pdf
random-140312045902-phpapp01.pdfrandom-140312045902-phpapp01.pdf
random-140312045902-phpapp01.pdf
 
.Net
.Net.Net
.Net
 
SynapseIndia dotnet web development architecture module
SynapseIndia dotnet web development architecture moduleSynapseIndia dotnet web development architecture module
SynapseIndia dotnet web development architecture module
 
1.0
1.01.0
1.0
 
.Net framework interview questions
.Net framework interview questions.Net framework interview questions
.Net framework interview questions
 
ASP.NET 01 - Introduction
ASP.NET 01 - IntroductionASP.NET 01 - Introduction
ASP.NET 01 - Introduction
 
Vb
VbVb
Vb
 
Net Interview questions
Net Interview questionsNet Interview questions
Net Interview questions
 
Microsoft.Net
Microsoft.NetMicrosoft.Net
Microsoft.Net
 
Net framework
Net frameworkNet framework
Net framework
 
.NET Core, ASP.NET Core Course, Session 3
.NET Core, ASP.NET Core Course, Session 3.NET Core, ASP.NET Core Course, Session 3
.NET Core, ASP.NET Core Course, Session 3
 
Dot net introduction
Dot net introductionDot net introduction
Dot net introduction
 
.Net framework
.Net framework.Net framework
.Net framework
 
Tutorial c#
Tutorial c#Tutorial c#
Tutorial c#
 
Introduction to .net
Introduction to .netIntroduction to .net
Introduction to .net
 

Recently uploaded

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 

Recently uploaded (20)

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 

C Sharp Jn

  • 1. Software Development Training Program Zeeshan Hanif
  • 2.
  • 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.
  • 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.
  • 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]