SlideShare uma empresa Scribd logo
1 de 48
Introduction to .Net Framework NithyaVidhyaarthi
Before .NET Windows GUI development: Win32 API, MFC, Visual Basic, COM Web development: ASP Java – “Write once, run anywhere.” Embrace and extend: Visual J++
Life As a C/Win32 API Programmer Traditional software development for the Windows. C developers are forced to contend with complex memory management and pointer arithmetic.  It lacks the benefits provided by the object-oriented approach When you combine the thousands of global functions and data types defined by the Win32 API to an already formidable language, it is little wonder that there are so many buggy applications floating around today.
Life As a C++/MFC Programmer ,[object Object]
Programmers benefit from the famed “pillars of OOP” (encapsulation, inheritance, and polymorphism).
Microsoft Foundation Classes (MFC) provides a set of C++ classes that facilitate the construction of Win32 applications.
It wraps a “sane subset” of the raw Win32 API behind a number of classes, magic macros, and numerous code-generation tools (wizards).
Regardless of the helpful MFC, programming for Windows using C++ remains a difficult and error-prone experience,[object Object]
Life As a Java/J2EE Programmer Object oriented with syntactic roots in C++.  Java cleans up many unsavory syntactical aspects of C++.  Java provides programmers with a large number of predefined “packages” that contain various type definitions.  Limited ability to access non-Java APIs. Little support for truecross-language integration.  Not appropriate for many graphically or numerically intensive applications.  A better approach for such programs would be to use a language such as C++ where appropriate.
Life As a COM Programmer Microsoft’s previous application development framework. reusable binary code. C++ programmers can build COM classes that can be used by VB6. Delphi programmers can use COM classes built using C.  COM’s language independence is limited.  COM has no support for classical inheritance).  COM is extremely complex under the hood. The Active Template Library (ATL) provides a set of C++ classes, templates, and macros to ease the creation of COM types.
Windows DNA Programmer ,[object Object]
COM-based Windows Distributed interNet Applications Architecture (DNA) is quite complex.
Due to the simple fact that Windows DNA requires the use of numerous technologies and languages (ASP, HTML, XML, JavaScript, VBScript, COM(+), and data access API like ADO). ,[object Object]
.Net, the Rescuer OOP JVM GUI .NET Web component-based design n-tier design
.Net, the Rescuer
.Net provides Integrated environment Internet, Desktop , Mobile devices consistent object-oriented To provide a portable environment A managed environment
What Is .NET .NET is a framework  New programming methodology .NET is platform independent / cross platform .NET is language-insensitive
.NET is cross-platform APP.exe ? Win32 (XP,2K,98) Win64 WinCE
.NET Application .NET Framework Narrow view of .Net applications Operating System + Hardware
.Net Framework
.Net Architecture .NET architecture is: multi-language cross-platform based on the CLR, FCL, and JIT technology .NET components are packaged as assemblies
.Net Architecture
.Net Technical Architecture VB C++ C# Visual Studio.NET JScript … Common Language Specification WindowsForms ASP.NET: Web Services and Web Forms WindowsForms ADO.NET: Data and XML Base Class Library Common Language Runtime
Common Language Runtime A common runtime for all .NET languages Common type system Common metadata Intermediate Language (IL) to native code compilers Memory allocation and garbage collection Code execution and security Over 15 languages supported today C#, VB, Jscript, Visual C++ from Microsoft Perl, Python, Smalltalk, Cobol, Haskell, Mercury, Eiffel, Oberon, Oz, Pascal, APL, CAML, Scheme, etc. Rational is working on Java compiler for CLR
The CLR Architecture Base Class Library Support Thread Support COM Marshaler Type Checker Exception Manager Security Engine Debug Engine MSIL to Native Compilers (JIT) Code Manager Garbage Collector (GC) Class Loader
CLR Execution Model (Narrow) Code in VB.NET Code in C# Code in another  .NET Language VB.NET compiler C# compiler Appropriate Compiler IL(Intermediate Language) code CLR just-in-time execution
CLR Execution Model Source code VB C++ C# Unmanaged Component Compiler Compiler Compiler Managed code Assembly IL Code Assembly IL Code Assembly IL Code Common Language Runtime JIT Compiler Native Code Operating System Services
How CLR works?
CLR based execution JIT Compiler APP.exe          OS Process CLR  other FCL components Core FCL obj code Underlying OS and HW
Common Language Runtime Execution Engine Compiles Microsoft Intermediate Language (MSIL) into native code Handles garbage collection Handles exceptions Enforces code access security Handles verification Managed v. Unmanaged
Implications of CLR execution model Clients need CLR & FCL to run .NET apps available via Redistributable .NET Framework Design trade-off… ,[object Object]
portability:
slower execution?,[object Object]
Advantages of CLR Support for developer services (debugging) Interoperation between managed code and unmanaged code (COM, DLLs). Managed code environment Improved memory handling Improved “garbage collection”
Advantages of CLR ,[object Object]
JIT allows the IL code to be hardware independent.
CLR also allows for enforcement of code access security.
Verification of type safety.
Access to Metadata (enhanced Type Information),[object Object]
CLI
Common Language Infrastructure ,[object Object]
Four components:
Common Type System (CTS)
Meta-data in a language agnostic fashion.
Common Language Specification – behaviors that all languages need to follow.
A Virtual Execution System (VES).,[object Object]
Common Type System (CTS)
CTS Data Types

Mais conteúdo relacionado

Mais procurados (20)

Microsoft dot net framework
Microsoft dot net frameworkMicrosoft dot net framework
Microsoft dot net framework
 
Nakov - .NET Framework Overview - English
Nakov - .NET Framework Overview - EnglishNakov - .NET Framework Overview - English
Nakov - .NET Framework Overview - English
 
CSharp Presentation
CSharp PresentationCSharp Presentation
CSharp Presentation
 
Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NET
 
Dotnet Frameworks Version History
Dotnet Frameworks Version HistoryDotnet Frameworks Version History
Dotnet Frameworks Version History
 
Introduction to Java
Introduction to Java Introduction to Java
Introduction to Java
 
What is dotnet (.NET) ?
What is dotnet (.NET) ?What is dotnet (.NET) ?
What is dotnet (.NET) ?
 
C# programming language
C# programming languageC# programming language
C# programming language
 
C sharp
C sharpC sharp
C sharp
 
ASP.NET Basics
ASP.NET Basics ASP.NET Basics
ASP.NET Basics
 
Programming in c#
Programming in c#Programming in c#
Programming in c#
 
Introduction To C#
Introduction To C#Introduction To C#
Introduction To C#
 
Microsoft .NET Framework
Microsoft .NET FrameworkMicrosoft .NET Framework
Microsoft .NET Framework
 
.Net Core
.Net Core.Net Core
.Net Core
 
Lecture 1 introduction to vb.net
Lecture 1   introduction to vb.netLecture 1   introduction to vb.net
Lecture 1 introduction to vb.net
 
Architecture of net framework
Architecture of net frameworkArchitecture of net framework
Architecture of net framework
 
Introduction to c#
Introduction to c#Introduction to c#
Introduction to c#
 
.Net
.Net.Net
.Net
 
Introduction to java
Introduction to javaIntroduction to java
Introduction to java
 
Introduction to JavaScript
Introduction to JavaScriptIntroduction to JavaScript
Introduction to JavaScript
 

Destaque

Asp.net architecture
Asp.net architectureAsp.net architecture
Asp.net architectureIblesoft
 
Overview of .Net Framework 4.5
Overview of .Net Framework 4.5Overview of .Net Framework 4.5
Overview of .Net Framework 4.5Bhushan Mulmule
 
Asp.net and .Net Framework ppt presentation
Asp.net and .Net Framework ppt presentationAsp.net and .Net Framework ppt presentation
Asp.net and .Net Framework ppt presentationabhishek singh
 
Crystal Reports Review
Crystal Reports ReviewCrystal Reports Review
Crystal Reports ReviewJustin R. Rue
 
Crystal Reports: Basics
Crystal Reports: BasicsCrystal Reports: Basics
Crystal Reports: BasicsNet at Work
 
Components of .NET Framework
Components of .NET FrameworkComponents of .NET Framework
Components of .NET FrameworkRoshith S Pai
 
Architecture of .net framework
Architecture of .net frameworkArchitecture of .net framework
Architecture of .net frameworkThen Murugeshwari
 
CMS (CONTENT MANAGEMENT SYSTEM)
CMS (CONTENT MANAGEMENT SYSTEM)CMS (CONTENT MANAGEMENT SYSTEM)
CMS (CONTENT MANAGEMENT SYSTEM)Aaina Katyal
 
Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)Vangos Pterneas
 
Content Management System
Content Management SystemContent Management System
Content Management SystemOmnePresent
 
Robot Framework Introduction
Robot Framework IntroductionRobot Framework Introduction
Robot Framework IntroductionPekka Klärck
 
The Design of the Scalaz 8 Effect System
The Design of the Scalaz 8 Effect SystemThe Design of the Scalaz 8 Effect System
The Design of the Scalaz 8 Effect SystemJohn De Goes
 
What is a Content Management System or CMS
What is a Content Management System or CMSWhat is a Content Management System or CMS
What is a Content Management System or CMSSteve Williams
 
GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기
 GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기 GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기
GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기Kenneth Ceyer
 
失敗と向き合う姿勢を正す話
失敗と向き合う姿勢を正す話失敗と向き合う姿勢を正す話
失敗と向き合う姿勢を正す話LIFULL Co., Ltd.
 

Destaque (20)

Asp.net architecture
Asp.net architectureAsp.net architecture
Asp.net architecture
 
Visual Studio IDE
Visual Studio IDEVisual Studio IDE
Visual Studio IDE
 
Asp Architecture
Asp ArchitectureAsp Architecture
Asp Architecture
 
Overview of .Net Framework 4.5
Overview of .Net Framework 4.5Overview of .Net Framework 4.5
Overview of .Net Framework 4.5
 
Asp.net and .Net Framework ppt presentation
Asp.net and .Net Framework ppt presentationAsp.net and .Net Framework ppt presentation
Asp.net and .Net Framework ppt presentation
 
Crystal Reports Review
Crystal Reports ReviewCrystal Reports Review
Crystal Reports Review
 
Crystal Reports: Basics
Crystal Reports: BasicsCrystal Reports: Basics
Crystal Reports: Basics
 
Crystal report
Crystal reportCrystal report
Crystal report
 
Components of .NET Framework
Components of .NET FrameworkComponents of .NET Framework
Components of .NET Framework
 
Architecture of .net framework
Architecture of .net frameworkArchitecture of .net framework
Architecture of .net framework
 
CMS (CONTENT MANAGEMENT SYSTEM)
CMS (CONTENT MANAGEMENT SYSTEM)CMS (CONTENT MANAGEMENT SYSTEM)
CMS (CONTENT MANAGEMENT SYSTEM)
 
Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)
 
Content Management System
Content Management SystemContent Management System
Content Management System
 
Robot Framework Introduction
Robot Framework IntroductionRobot Framework Introduction
Robot Framework Introduction
 
The Design of the Scalaz 8 Effect System
The Design of the Scalaz 8 Effect SystemThe Design of the Scalaz 8 Effect System
The Design of the Scalaz 8 Effect System
 
Demonetisation.
Demonetisation.Demonetisation.
Demonetisation.
 
What is a Content Management System or CMS
What is a Content Management System or CMSWhat is a Content Management System or CMS
What is a Content Management System or CMS
 
GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기
 GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기 GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기
GDG DevFest 2017 Seoul 프론트엔드 모던 프레임워크 낱낱히 파헤치기
 
失敗と向き合う姿勢を正す話
失敗と向き合う姿勢を正す話失敗と向き合う姿勢を正す話
失敗と向き合う姿勢を正す話
 
reveal.js 3.0.0
reveal.js 3.0.0reveal.js 3.0.0
reveal.js 3.0.0
 

Semelhante a Introduction to .net framework

Semelhante a Introduction to .net framework (20)

Presentation1
Presentation1Presentation1
Presentation1
 
Introduction to .NET by QuontraSolutions
Introduction to .NET by QuontraSolutionsIntroduction to .NET by QuontraSolutions
Introduction to .NET by QuontraSolutions
 
Introduction to .net FrameWork by QuontraSolutions
Introduction to .net FrameWork by QuontraSolutionsIntroduction to .net FrameWork by QuontraSolutions
Introduction to .net FrameWork by QuontraSolutions
 
1 get started with c#
1   get started with c#1   get started with c#
1 get started with c#
 
ASP.NET Session 1
ASP.NET Session 1ASP.NET Session 1
ASP.NET Session 1
 
Dotnet ch1
Dotnet ch1Dotnet ch1
Dotnet ch1
 
Introductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka PinglikarIntroductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka Pinglikar
 
Introduction to .net
Introduction to .netIntroduction to .net
Introduction to .net
 
.Net overview
.Net overview.Net overview
.Net overview
 
.Net Overview
.Net Overview.Net Overview
.Net Overview
 
.Net overview
.Net overview.Net overview
.Net overview
 
Microsoft.Net
Microsoft.NetMicrosoft.Net
Microsoft.Net
 
Csharp dot net
Csharp dot netCsharp dot net
Csharp dot net
 
Net framework
Net frameworkNet framework
Net framework
 
.Net framework
.Net framework.Net framework
.Net framework
 
Chapter1_Part1.pptx
Chapter1_Part1.pptxChapter1_Part1.pptx
Chapter1_Part1.pptx
 
Visual studio.net
Visual studio.netVisual studio.net
Visual studio.net
 
.Net Overview -- Training (Lesson 1)
.Net Overview -- Training (Lesson 1).Net Overview -- Training (Lesson 1)
.Net Overview -- Training (Lesson 1)
 
.Net Framework
.Net Framework.Net Framework
.Net Framework
 
Dot net
Dot netDot net
Dot net
 

Último

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
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
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 

Último (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
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
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 

Introduction to .net framework

  • 1. Introduction to .Net Framework NithyaVidhyaarthi
  • 2. Before .NET Windows GUI development: Win32 API, MFC, Visual Basic, COM Web development: ASP Java – “Write once, run anywhere.” Embrace and extend: Visual J++
  • 3. Life As a C/Win32 API Programmer Traditional software development for the Windows. C developers are forced to contend with complex memory management and pointer arithmetic. It lacks the benefits provided by the object-oriented approach When you combine the thousands of global functions and data types defined by the Win32 API to an already formidable language, it is little wonder that there are so many buggy applications floating around today.
  • 4.
  • 5. Programmers benefit from the famed “pillars of OOP” (encapsulation, inheritance, and polymorphism).
  • 6. Microsoft Foundation Classes (MFC) provides a set of C++ classes that facilitate the construction of Win32 applications.
  • 7. It wraps a “sane subset” of the raw Win32 API behind a number of classes, magic macros, and numerous code-generation tools (wizards).
  • 8.
  • 9. Life As a Java/J2EE Programmer Object oriented with syntactic roots in C++. Java cleans up many unsavory syntactical aspects of C++. Java provides programmers with a large number of predefined “packages” that contain various type definitions. Limited ability to access non-Java APIs. Little support for truecross-language integration. Not appropriate for many graphically or numerically intensive applications. A better approach for such programs would be to use a language such as C++ where appropriate.
  • 10. Life As a COM Programmer Microsoft’s previous application development framework. reusable binary code. C++ programmers can build COM classes that can be used by VB6. Delphi programmers can use COM classes built using C. COM’s language independence is limited. COM has no support for classical inheritance). COM is extremely complex under the hood. The Active Template Library (ATL) provides a set of C++ classes, templates, and macros to ease the creation of COM types.
  • 11.
  • 12. COM-based Windows Distributed interNet Applications Architecture (DNA) is quite complex.
  • 13.
  • 14. .Net, the Rescuer OOP JVM GUI .NET Web component-based design n-tier design
  • 16. .Net provides Integrated environment Internet, Desktop , Mobile devices consistent object-oriented To provide a portable environment A managed environment
  • 17. What Is .NET .NET is a framework New programming methodology .NET is platform independent / cross platform .NET is language-insensitive
  • 18. .NET is cross-platform APP.exe ? Win32 (XP,2K,98) Win64 WinCE
  • 19. .NET Application .NET Framework Narrow view of .Net applications Operating System + Hardware
  • 21. .Net Architecture .NET architecture is: multi-language cross-platform based on the CLR, FCL, and JIT technology .NET components are packaged as assemblies
  • 23. .Net Technical Architecture VB C++ C# Visual Studio.NET JScript … Common Language Specification WindowsForms ASP.NET: Web Services and Web Forms WindowsForms ADO.NET: Data and XML Base Class Library Common Language Runtime
  • 24. Common Language Runtime A common runtime for all .NET languages Common type system Common metadata Intermediate Language (IL) to native code compilers Memory allocation and garbage collection Code execution and security Over 15 languages supported today C#, VB, Jscript, Visual C++ from Microsoft Perl, Python, Smalltalk, Cobol, Haskell, Mercury, Eiffel, Oberon, Oz, Pascal, APL, CAML, Scheme, etc. Rational is working on Java compiler for CLR
  • 25. The CLR Architecture Base Class Library Support Thread Support COM Marshaler Type Checker Exception Manager Security Engine Debug Engine MSIL to Native Compilers (JIT) Code Manager Garbage Collector (GC) Class Loader
  • 26. CLR Execution Model (Narrow) Code in VB.NET Code in C# Code in another .NET Language VB.NET compiler C# compiler Appropriate Compiler IL(Intermediate Language) code CLR just-in-time execution
  • 27. CLR Execution Model Source code VB C++ C# Unmanaged Component Compiler Compiler Compiler Managed code Assembly IL Code Assembly IL Code Assembly IL Code Common Language Runtime JIT Compiler Native Code Operating System Services
  • 29. CLR based execution JIT Compiler APP.exe OS Process CLR other FCL components Core FCL obj code Underlying OS and HW
  • 30. Common Language Runtime Execution Engine Compiles Microsoft Intermediate Language (MSIL) into native code Handles garbage collection Handles exceptions Enforces code access security Handles verification Managed v. Unmanaged
  • 31.
  • 33.
  • 34. Advantages of CLR Support for developer services (debugging) Interoperation between managed code and unmanaged code (COM, DLLs). Managed code environment Improved memory handling Improved “garbage collection”
  • 35.
  • 36. JIT allows the IL code to be hardware independent.
  • 37. CLR also allows for enforcement of code access security.
  • 39.
  • 40. CLI
  • 41.
  • 44. Meta-data in a language agnostic fashion.
  • 45. Common Language Specification – behaviors that all languages need to follow.
  • 46.
  • 49. Common Data Types CLR provides a set of primitive types that all languages must support. The data types include: Integer—three types 16/32/64 bits Float—two types: 32/64 bits Boolean and Character Date/time and Time span The primitive types can be collected into Arrays Structures Combination of the two
  • 50. Common Language Specification (CLS) Not all languages support all CTS types and features C# is case sensitive, VB.NET is not C# supports pointer types (in unsafe mode), VB.NET does not C# supports operator overloading, VB.NET does not CLS was drafted to promote language interoperability vast majority of classes within FCL are CLS-compliant
  • 51. Comparison to Java Hello.java Hello.class JVM compile execute Source code Byte code Hello.vb Hello.exe CLR compile execute Source code CIL
  • 53. Base Class Library Similar to Java’s System namespace. Used by all .NET applications Has classes for IO, threading, database, text, graphics, console, sockets/web/mail, security, cryptography, COM, run-time type discovery/invocation, assembly generation
  • 54. Framework Class Library @ BCL Single consistent set of object oriented class libraries to enable building distributed web applications (Unified Classes) Built using classes arranged across logical hierarchical namespaces Work with all CLR languages No more “VBRun” or “MFC” divide
  • 56.
  • 57. CLR accepts the IL code and recompiles it to machine code. The recompilation is just-in-time (JIT) meaning it is done as soon as a function or subroutine is called.
  • 58.
  • 59. Contact me via Mail: arunprasadnva@gmail.com arun85prasad@gmail.com Social network(s) / Services: arunprasadvidhyaarthi – skype, slideshare.com Arun85prasad – twitter, gmail, live, yahoo.com Arun Prasad - facebook, orkut Arunprasad – scribd.com Mobile: +91 93446 20159
  • 61. Disclaimer The names of Technologies, Product(s), Companies, Application(s), Tool(s), Utilities, etc provided with this material are intended to reference only. The name(s), brand name(s), trademark(s), registered trademark(s), logo(s), slogan(s) belong to their respective owners in the respective countries.