SlideShare a Scribd company logo
.Net Framework
Introduction to
.NET Framework
Outline
Introduction to .NET Framework
Architecture of .NET Framework
CLS, CLR, CTS, IL, CIL, MSIL
Before .NET
 Windows GUI development: Win32 API, MFC,
Visual Basic, COM
 Web development: ASP
 Java – “Write once, run anywhere. (WORA)”
What Is .NET
 .NET is a framework
 New Programming Paradigm
 .NET is platform independent / cross platform
 .NET is language-insensitive
.NET provides
 Integrated environment
 Internet, Desktop , Mobile devices
 consistent object-oriented
 To provide a portable environment
 Amanaged environment
.NET
Architecture
.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
Windows
Forms
Languages Supported by .NET
Over 35 languages are supported now
 C#, VB, Jscript, Visual C++
 Perl, Python, Smalltalk,
 Cobol, Haskell, Mercury, Eiffel,
 Oberon, Oz, Pascal,
 APL, CAML, Scheme, etc.
Common Type System (CTS)
• A specification for how types are
defined and how they behave.
• no syntaxspecified
• A type can contain zero or more
members:
• Field
• Method
• Property
• Event
Common Type System (CTS)
CTS is a formal specification that describes
how a given type must be defined for CLR
• CTS Class Type
• CTS Structure Type
• CTS Interface Type
• CTS Enumeration type
• CTS Delegate type
CTS Class Type
• Same as C++ class
• Can contain members: methods,
properties, events, etc.
• Support for abstract members that
define a polymorphic interface for
derived classes
• Multiple inheritance is not allowed
CTS Class Characteristics
• "sealed"? – sealed classes can't function as
base classes
• Implement any interfaces? – An
interface is a collection of abstract
members
• Abstract or Concrete? – Abstract classes (to
define common behaviors for derived) can't be
created directly but concrete classes can.
• Visibility? – visibility attribute to know
whether external assemblies can use it.
CTS Structure types
 Same as C/C++
 Derived from a common base class
System.ValueType
CTS Enumeration type
To group name/value pairs under a
specific name Default Storage:
System.Int32 (could be Changed)
CTS Interface types
CTS Delegate type
• Same as pure abstract class of C++
• A description of work that a derived
class can perform
• Similar to a class, but can never be
instantiated
• Same as C's function pointer
(System.MulticastDelegate)
• Useful for event handling (ASP .NET)
CTS Data Types
.NET Base Type C# Type
System.Byte Byte
System.SByte sbyte
System.Int16 short
System.Int32 int
System.Int64 long
System.UInt64 ulong
System.Single float
System.Double double
System.Object object
System.String string
System.Boolean bool
CLS Compliance
C# Type CLS Compliance
byte Yes
sbyte No
short Yes
int Yes
long Yes
ulong No
float Yes
double Yes
object Yes
string Yes
char Yes
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
Common Language Runtime
 Execution Engine
 Compiles Microsoft Intermediate
Language (MSIL) into nativecode
 Handles garbagecollection
 Handles exceptions
 Enforces code accesssecurity
 Handles verification
 Managed v.Unmanaged Code
CLR Execution Model
Source
code
VB C# C++
Compiler Compiler Compiler
Assembly
IL Code
Assembly
IL Code
Assembly
IL Code
Common Language Runtime
JIT Compiler
Native Code
Operating System Services
Managed
code
Unmanaged
Component
Advantages of CLR
• Support for developer services (debugging)
• Interoperation between managed code and
unmanaged code (COM,DLLs).
• Managed code environment
• Improved memory handling
• Improved “garbagecollection”
Advantages of CLR
• JIT allows code to run in a protected environment
as managed code.
• JIT allows the IL code to be hardware
independent.
• CLR also allows for enforcement of code
access security.
• Verification of type safety.
CLR .NET
Source
Code
Base Class
Libraries
(mscorlib.dll)
.NET Execution Engine
Class Loader
Jitter
Platform
Specific code
Execute
.NET Compiler
DLL or EXE
(CIL)
mscoree.dll
mscoree.dll
MicroSoft Common
Object Runtime Execution Engine
Dot Net Namespaces
• MFC, Java, VB 6.0 have predefined set of
classes; C# doesn't
• C# uses namespace concept
• Any language targeting the .NET runtime
makes use of the same namespaces and
same types as C#
• System is the root namespace
Sample .NET namespaces
System
primitive types, garbage
collection, etc
System.Collections Container objects: ArrayList, Queue,
etc.
System.Data
System.Data.Common
System.Data.OleDb
System.Data.SqlClient
For Database manipulations ADO .NET
System.IO file IO, buffering, etc.
System.Drawing
System.Drawing.2D
GDI+ primitives, bitmaps, fonts, icons, etc.
System.Threading Threads
Common Data Types
CLR provides a set of primitive types that all
languages must support.The datatypes
include:
 Integer—three types 16/32/64bits
 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
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 introduced to promote language
interoperability
 vast majority of classes within FCL are CLS-compliant
Comparison to Java
Hello.java Hello.class JVM
compile execute
Hello.vb Hello.exe CLR
compile execute
Source code Bytecode
CILSource code
Base Class Library @ FCL
Unified Classes
Web Classes (ASP.NET)
Controls, Caching, Security, Session, Configuration etc
System Classes
Collections, Diagnostics, Globalization, IO, Security,
Threading Serialization, Reflection, Messaging etc
Data (ADO.NET)
ADO, SQL,Types etc
Drawing Classes
Drawing, Imaging, Text, etc
Windows Forms
Design, Cmpnt Model etc
XML Classes
XSLT, Path, Serialization etc
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 allCLR languages
Summary
Introduction to .NET Framework
Architecture of .NET Framework
CTS, CLR, IL, MSIL, CIL
Introduction to dot net framework
Introduction to dot net framework
Ad

More Related Content

What's hot (20)

C# note
C# noteC# note
C# note
Dr. Somnath Sinha
 
Vb
VbVb
Vb
Rajeev Sharan
 
Difference between java and c#
Difference between java and c#Difference between java and c#
Difference between java and c#
TECOS
 
3rd june
3rd june3rd june
3rd june
Rahat Khanna a.k.a mAppMechanic
 
Standard libraries on iOS
Standard libraries on iOSStandard libraries on iOS
Standard libraries on iOS
Make School
 
Xtext: code generation
Xtext: code generationXtext: code generation
Xtext: code generation
Mikhail Barash
 
Python Concepts
Python ConceptsPython Concepts
Python Concepts
saipreethi16
 
Lecture 1
Lecture 1Lecture 1
Lecture 1
Soran University
 
Explain CTS in detail.
Explain CTS in detail. Explain CTS in detail.
Explain CTS in detail.
Questpond
 
Python training
Python trainingPython training
Python training
saijohn1997
 
(6) c sharp introduction_advanced_features_part_i
(6) c sharp introduction_advanced_features_part_i(6) c sharp introduction_advanced_features_part_i
(6) c sharp introduction_advanced_features_part_i
Nico Ludwig
 
Console applications IN C#
Console applications IN C#Console applications IN C#
Console applications IN C#
Sireesh K
 
12. standard library introduction
12. standard library introduction12. standard library introduction
12. standard library introduction
Vahid Heidari
 
Introducing object oriented programming (oop)
Introducing object oriented programming (oop)Introducing object oriented programming (oop)
Introducing object oriented programming (oop)
Hemlathadhevi Annadhurai
 
Ppt of c++ vs c#
Ppt of c++ vs c#Ppt of c++ vs c#
Ppt of c++ vs c#
shubhra chauhan
 
(3) cpp abstractions more_on_user_defined_types_exercises
(3) cpp abstractions more_on_user_defined_types_exercises(3) cpp abstractions more_on_user_defined_types_exercises
(3) cpp abstractions more_on_user_defined_types_exercises
Nico Ludwig
 
Lzw algorithm
Lzw algorithmLzw algorithm
Lzw algorithm
keyvan moazami
 
Avro2 tf: a data processing engine for tensorflow
Avro2 tf: a data processing engine for tensorflowAvro2 tf: a data processing engine for tensorflow
Avro2 tf: a data processing engine for tensorflow
Xuhong Zhang
 
Java basic datatypes
Java basic datatypesJava basic datatypes
Java basic datatypes
Soba Arjun
 
Lesson1
Lesson1Lesson1
Lesson1
Alex Honcharuk
 
Difference between java and c#
Difference between java and c#Difference between java and c#
Difference between java and c#
TECOS
 
Standard libraries on iOS
Standard libraries on iOSStandard libraries on iOS
Standard libraries on iOS
Make School
 
Xtext: code generation
Xtext: code generationXtext: code generation
Xtext: code generation
Mikhail Barash
 
Explain CTS in detail.
Explain CTS in detail. Explain CTS in detail.
Explain CTS in detail.
Questpond
 
(6) c sharp introduction_advanced_features_part_i
(6) c sharp introduction_advanced_features_part_i(6) c sharp introduction_advanced_features_part_i
(6) c sharp introduction_advanced_features_part_i
Nico Ludwig
 
Console applications IN C#
Console applications IN C#Console applications IN C#
Console applications IN C#
Sireesh K
 
12. standard library introduction
12. standard library introduction12. standard library introduction
12. standard library introduction
Vahid Heidari
 
Introducing object oriented programming (oop)
Introducing object oriented programming (oop)Introducing object oriented programming (oop)
Introducing object oriented programming (oop)
Hemlathadhevi Annadhurai
 
(3) cpp abstractions more_on_user_defined_types_exercises
(3) cpp abstractions more_on_user_defined_types_exercises(3) cpp abstractions more_on_user_defined_types_exercises
(3) cpp abstractions more_on_user_defined_types_exercises
Nico Ludwig
 
Avro2 tf: a data processing engine for tensorflow
Avro2 tf: a data processing engine for tensorflowAvro2 tf: a data processing engine for tensorflow
Avro2 tf: a data processing engine for tensorflow
Xuhong Zhang
 
Java basic datatypes
Java basic datatypesJava basic datatypes
Java basic datatypes
Soba Arjun
 

Similar to Introduction to dot net framework (20)

C#_01_CLROverview.ppt
C#_01_CLROverview.pptC#_01_CLROverview.ppt
C#_01_CLROverview.ppt
MarcEdwards35
 
CSharp_01_CLROverview_and Introductionc#
CSharp_01_CLROverview_and Introductionc#CSharp_01_CLROverview_and Introductionc#
CSharp_01_CLROverview_and Introductionc#
Ranjithsingh20
 
Introductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka PinglikarIntroductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka Pinglikar
PriyankaPinglikar
 
The Philosophy of .Net
The Philosophy of .NetThe Philosophy of .Net
The Philosophy of .Net
Vahid Farahmandian
 
Introduction to .NET by QuontraSolutions
Introduction to .NET by QuontraSolutionsIntroduction to .NET by QuontraSolutions
Introduction to .NET by QuontraSolutions
QUONTRASOLUTIONS
 
Introduction to .net FrameWork by QuontraSolutions
Introduction to .net FrameWork by QuontraSolutionsIntroduction to .net FrameWork by QuontraSolutions
Introduction to .net FrameWork by QuontraSolutions
Quontra Solutions
 
.Net Framework
.Net Framework.Net Framework
.Net Framework
MohamadKrm
 
C# And Data types itrodu ction to C# fucntins
C# And Data types itrodu ction to C# fucntinsC# And Data types itrodu ction to C# fucntins
C# And Data types itrodu ction to C# fucntins
RamaSubramanian79
 
Microsoft.Net
Microsoft.NetMicrosoft.Net
Microsoft.Net
Vishwa Mohan
 
.Net overview|Introduction Of .net
.Net overview|Introduction Of .net.Net overview|Introduction Of .net
.Net overview|Introduction Of .net
pinky singh
 
Presentation1
Presentation1Presentation1
Presentation1
kpkcsc
 
Microsoft .NET (dotnet) Framework 2003 - 2004 overview and web services…
Microsoft .NET (dotnet) Framework 2003 - 2004 overview and web services…Microsoft .NET (dotnet) Framework 2003 - 2004 overview and web services…
Microsoft .NET (dotnet) Framework 2003 - 2004 overview and web services…
Lorenz Lo Sauer
 
Chapter 1 introduction to .net
Chapter 1 introduction to .netChapter 1 introduction to .net
Chapter 1 introduction to .net
Rahul Bhoge
 
Nakov - .NET Framework Overview - English
Nakov - .NET Framework Overview - EnglishNakov - .NET Framework Overview - English
Nakov - .NET Framework Overview - English
Svetlin Nakov
 
1.Philosophy of .NET
1.Philosophy of .NET1.Philosophy of .NET
1.Philosophy of .NET
snandagopalan2
 
Common language runtime clr
Common language runtime clrCommon language runtime clr
Common language runtime clr
SanSan149
 
Session2 (3)
Session2 (3)Session2 (3)
Session2 (3)
DrUjwala1
 
Synapse india sharing info on dotnet framework part2
Synapse india sharing info on dotnet framework part2Synapse india sharing info on dotnet framework part2
Synapse india sharing info on dotnet framework part2
Synapseindiappsdevelopment
 
Intro.net
Intro.netIntro.net
Intro.net
singhadarsh
 
Nakov dot net-framework-overview-english
Nakov dot net-framework-overview-englishNakov dot net-framework-overview-english
Nakov dot net-framework-overview-english
srivathsan.10
 
C#_01_CLROverview.ppt
C#_01_CLROverview.pptC#_01_CLROverview.ppt
C#_01_CLROverview.ppt
MarcEdwards35
 
CSharp_01_CLROverview_and Introductionc#
CSharp_01_CLROverview_and Introductionc#CSharp_01_CLROverview_and Introductionc#
CSharp_01_CLROverview_and Introductionc#
Ranjithsingh20
 
Introductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka PinglikarIntroductionto .netframework by Priyanka Pinglikar
Introductionto .netframework by Priyanka Pinglikar
PriyankaPinglikar
 
Introduction to .NET by QuontraSolutions
Introduction to .NET by QuontraSolutionsIntroduction to .NET by QuontraSolutions
Introduction to .NET by QuontraSolutions
QUONTRASOLUTIONS
 
Introduction to .net FrameWork by QuontraSolutions
Introduction to .net FrameWork by QuontraSolutionsIntroduction to .net FrameWork by QuontraSolutions
Introduction to .net FrameWork by QuontraSolutions
Quontra Solutions
 
.Net Framework
.Net Framework.Net Framework
.Net Framework
MohamadKrm
 
C# And Data types itrodu ction to C# fucntins
C# And Data types itrodu ction to C# fucntinsC# And Data types itrodu ction to C# fucntins
C# And Data types itrodu ction to C# fucntins
RamaSubramanian79
 
.Net overview|Introduction Of .net
.Net overview|Introduction Of .net.Net overview|Introduction Of .net
.Net overview|Introduction Of .net
pinky singh
 
Presentation1
Presentation1Presentation1
Presentation1
kpkcsc
 
Microsoft .NET (dotnet) Framework 2003 - 2004 overview and web services…
Microsoft .NET (dotnet) Framework 2003 - 2004 overview and web services…Microsoft .NET (dotnet) Framework 2003 - 2004 overview and web services…
Microsoft .NET (dotnet) Framework 2003 - 2004 overview and web services…
Lorenz Lo Sauer
 
Chapter 1 introduction to .net
Chapter 1 introduction to .netChapter 1 introduction to .net
Chapter 1 introduction to .net
Rahul Bhoge
 
Nakov - .NET Framework Overview - English
Nakov - .NET Framework Overview - EnglishNakov - .NET Framework Overview - English
Nakov - .NET Framework Overview - English
Svetlin Nakov
 
Common language runtime clr
Common language runtime clrCommon language runtime clr
Common language runtime clr
SanSan149
 
Session2 (3)
Session2 (3)Session2 (3)
Session2 (3)
DrUjwala1
 
Synapse india sharing info on dotnet framework part2
Synapse india sharing info on dotnet framework part2Synapse india sharing info on dotnet framework part2
Synapse india sharing info on dotnet framework part2
Synapseindiappsdevelopment
 
Nakov dot net-framework-overview-english
Nakov dot net-framework-overview-englishNakov dot net-framework-overview-english
Nakov dot net-framework-overview-english
srivathsan.10
 
Ad

Recently uploaded (20)

Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Library Association of Ireland
 
Political History of Pala dynasty Pala Rulers NEP.pptx
Political History of Pala dynasty Pala Rulers NEP.pptxPolitical History of Pala dynasty Pala Rulers NEP.pptx
Political History of Pala dynasty Pala Rulers NEP.pptx
Arya Mahila P. G. College, Banaras Hindu University, Varanasi, India.
 
Introduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe EngineeringIntroduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe Engineering
Damian T. Gordon
 
How to Subscribe Newsletter From Odoo 18 Website
How to Subscribe Newsletter From Odoo 18 WebsiteHow to Subscribe Newsletter From Odoo 18 Website
How to Subscribe Newsletter From Odoo 18 Website
Celine George
 
Handling Multiple Choice Responses: Fortune Effiong.pptx
Handling Multiple Choice Responses: Fortune Effiong.pptxHandling Multiple Choice Responses: Fortune Effiong.pptx
Handling Multiple Choice Responses: Fortune Effiong.pptx
AuthorAIDNationalRes
 
To study the nervous system of insect.pptx
To study the nervous system of insect.pptxTo study the nervous system of insect.pptx
To study the nervous system of insect.pptx
Arshad Shaikh
 
How to Manage Opening & Closing Controls in Odoo 17 POS
How to Manage Opening & Closing Controls in Odoo 17 POSHow to Manage Opening & Closing Controls in Odoo 17 POS
How to Manage Opening & Closing Controls in Odoo 17 POS
Celine George
 
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACYUNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
DR.PRISCILLA MARY J
 
One Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learningOne Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learning
momer9505
 
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - WorksheetCBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
Sritoma Majumder
 
Biophysics Chapter 3 Methods of Studying Macromolecules.pdf
Biophysics Chapter 3 Methods of Studying Macromolecules.pdfBiophysics Chapter 3 Methods of Studying Macromolecules.pdf
Biophysics Chapter 3 Methods of Studying Macromolecules.pdf
PKLI-Institute of Nursing and Allied Health Sciences Lahore , Pakistan.
 
Ultimate VMware 2V0-11.25 Exam Dumps for Exam Success
Ultimate VMware 2V0-11.25 Exam Dumps for Exam SuccessUltimate VMware 2V0-11.25 Exam Dumps for Exam Success
Ultimate VMware 2V0-11.25 Exam Dumps for Exam Success
Mark Soia
 
Anti-Depressants pharmacology 1slide.pptx
Anti-Depressants pharmacology 1slide.pptxAnti-Depressants pharmacology 1slide.pptx
Anti-Depressants pharmacology 1slide.pptx
Mayuri Chavan
 
YSPH VMOC Special Report - Measles Outbreak Southwest US 4-30-2025.pptx
YSPH VMOC Special Report - Measles Outbreak  Southwest US 4-30-2025.pptxYSPH VMOC Special Report - Measles Outbreak  Southwest US 4-30-2025.pptx
YSPH VMOC Special Report - Measles Outbreak Southwest US 4-30-2025.pptx
Yale School of Public Health - The Virtual Medical Operations Center (VMOC)
 
apa-style-referencing-visual-guide-2025.pdf
apa-style-referencing-visual-guide-2025.pdfapa-style-referencing-visual-guide-2025.pdf
apa-style-referencing-visual-guide-2025.pdf
Ishika Ghosh
 
Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...
Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...
Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...
Library Association of Ireland
 
Social Problem-Unemployment .pptx notes for Physiotherapy Students
Social Problem-Unemployment .pptx notes for Physiotherapy StudentsSocial Problem-Unemployment .pptx notes for Physiotherapy Students
Social Problem-Unemployment .pptx notes for Physiotherapy Students
DrNidhiAgarwal
 
How to manage Multiple Warehouses for multiple floors in odoo point of sale
How to manage Multiple Warehouses for multiple floors in odoo point of saleHow to manage Multiple Warehouses for multiple floors in odoo point of sale
How to manage Multiple Warehouses for multiple floors in odoo point of sale
Celine George
 
Multi-currency in odoo accounting and Update exchange rates automatically in ...
Multi-currency in odoo accounting and Update exchange rates automatically in ...Multi-currency in odoo accounting and Update exchange rates automatically in ...
Multi-currency in odoo accounting and Update exchange rates automatically in ...
Celine George
 
Understanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s GuideUnderstanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s Guide
GS Virdi
 
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Phoenix – A Collaborative Renewal of Children’s and Young People’s Services C...
Library Association of Ireland
 
Introduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe EngineeringIntroduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe Engineering
Damian T. Gordon
 
How to Subscribe Newsletter From Odoo 18 Website
How to Subscribe Newsletter From Odoo 18 WebsiteHow to Subscribe Newsletter From Odoo 18 Website
How to Subscribe Newsletter From Odoo 18 Website
Celine George
 
Handling Multiple Choice Responses: Fortune Effiong.pptx
Handling Multiple Choice Responses: Fortune Effiong.pptxHandling Multiple Choice Responses: Fortune Effiong.pptx
Handling Multiple Choice Responses: Fortune Effiong.pptx
AuthorAIDNationalRes
 
To study the nervous system of insect.pptx
To study the nervous system of insect.pptxTo study the nervous system of insect.pptx
To study the nervous system of insect.pptx
Arshad Shaikh
 
How to Manage Opening & Closing Controls in Odoo 17 POS
How to Manage Opening & Closing Controls in Odoo 17 POSHow to Manage Opening & Closing Controls in Odoo 17 POS
How to Manage Opening & Closing Controls in Odoo 17 POS
Celine George
 
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACYUNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
UNIT 3 NATIONAL HEALTH PROGRAMMEE. SOCIAL AND PREVENTIVE PHARMACY
DR.PRISCILLA MARY J
 
One Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learningOne Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learning
momer9505
 
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - WorksheetCBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
CBSE - Grade 8 - Science - Chemistry - Metals and Non Metals - Worksheet
Sritoma Majumder
 
Ultimate VMware 2V0-11.25 Exam Dumps for Exam Success
Ultimate VMware 2V0-11.25 Exam Dumps for Exam SuccessUltimate VMware 2V0-11.25 Exam Dumps for Exam Success
Ultimate VMware 2V0-11.25 Exam Dumps for Exam Success
Mark Soia
 
Anti-Depressants pharmacology 1slide.pptx
Anti-Depressants pharmacology 1slide.pptxAnti-Depressants pharmacology 1slide.pptx
Anti-Depressants pharmacology 1slide.pptx
Mayuri Chavan
 
apa-style-referencing-visual-guide-2025.pdf
apa-style-referencing-visual-guide-2025.pdfapa-style-referencing-visual-guide-2025.pdf
apa-style-referencing-visual-guide-2025.pdf
Ishika Ghosh
 
Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...
Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...
Niamh Lucey, Mary Dunne. Health Sciences Libraries Group (LAI). Lighting the ...
Library Association of Ireland
 
Social Problem-Unemployment .pptx notes for Physiotherapy Students
Social Problem-Unemployment .pptx notes for Physiotherapy StudentsSocial Problem-Unemployment .pptx notes for Physiotherapy Students
Social Problem-Unemployment .pptx notes for Physiotherapy Students
DrNidhiAgarwal
 
How to manage Multiple Warehouses for multiple floors in odoo point of sale
How to manage Multiple Warehouses for multiple floors in odoo point of saleHow to manage Multiple Warehouses for multiple floors in odoo point of sale
How to manage Multiple Warehouses for multiple floors in odoo point of sale
Celine George
 
Multi-currency in odoo accounting and Update exchange rates automatically in ...
Multi-currency in odoo accounting and Update exchange rates automatically in ...Multi-currency in odoo accounting and Update exchange rates automatically in ...
Multi-currency in odoo accounting and Update exchange rates automatically in ...
Celine George
 
Understanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s GuideUnderstanding P–N Junction Semiconductors: A Beginner’s Guide
Understanding P–N Junction Semiconductors: A Beginner’s Guide
GS Virdi
 
Ad

Introduction to dot net framework

  • 3. Outline Introduction to .NET Framework Architecture of .NET Framework CLS, CLR, CTS, IL, CIL, MSIL
  • 4. Before .NET  Windows GUI development: Win32 API, MFC, Visual Basic, COM  Web development: ASP  Java – “Write once, run anywhere. (WORA)”
  • 5. What Is .NET  .NET is a framework  New Programming Paradigm  .NET is platform independent / cross platform  .NET is language-insensitive
  • 6. .NET provides  Integrated environment  Internet, Desktop , Mobile devices  consistent object-oriented  To provide a portable environment  Amanaged environment
  • 8. .NET Architecture … .NET architecture is:  multi-language  cross-platform  based on the CLR, FCL, and JIT technology  .NET components are packaged as assemblies
  • 10. Languages Supported by .NET Over 35 languages are supported now  C#, VB, Jscript, Visual C++  Perl, Python, Smalltalk,  Cobol, Haskell, Mercury, Eiffel,  Oberon, Oz, Pascal,  APL, CAML, Scheme, etc.
  • 11. Common Type System (CTS) • A specification for how types are defined and how they behave. • no syntaxspecified • A type can contain zero or more members: • Field • Method • Property • Event
  • 12. Common Type System (CTS) CTS is a formal specification that describes how a given type must be defined for CLR • CTS Class Type • CTS Structure Type • CTS Interface Type • CTS Enumeration type • CTS Delegate type
  • 13. CTS Class Type • Same as C++ class • Can contain members: methods, properties, events, etc. • Support for abstract members that define a polymorphic interface for derived classes • Multiple inheritance is not allowed
  • 14. CTS Class Characteristics • "sealed"? – sealed classes can't function as base classes • Implement any interfaces? – An interface is a collection of abstract members • Abstract or Concrete? – Abstract classes (to define common behaviors for derived) can't be created directly but concrete classes can. • Visibility? – visibility attribute to know whether external assemblies can use it.
  • 15. CTS Structure types  Same as C/C++  Derived from a common base class System.ValueType CTS Enumeration type To group name/value pairs under a specific name Default Storage: System.Int32 (could be Changed)
  • 16. CTS Interface types CTS Delegate type • Same as pure abstract class of C++ • A description of work that a derived class can perform • Similar to a class, but can never be instantiated • Same as C's function pointer (System.MulticastDelegate) • Useful for event handling (ASP .NET)
  • 17. CTS Data Types .NET Base Type C# Type System.Byte Byte System.SByte sbyte System.Int16 short System.Int32 int System.Int64 long System.UInt64 ulong System.Single float System.Double double System.Object object System.String string System.Boolean bool
  • 18. CLS Compliance C# Type CLS Compliance byte Yes sbyte No short Yes int Yes long Yes ulong No float Yes double Yes object Yes string Yes char Yes
  • 19. 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
  • 20. Common Language Runtime  Execution Engine  Compiles Microsoft Intermediate Language (MSIL) into nativecode  Handles garbagecollection  Handles exceptions  Enforces code accesssecurity  Handles verification  Managed v.Unmanaged Code
  • 21. CLR Execution Model Source code VB C# C++ Compiler Compiler Compiler Assembly IL Code Assembly IL Code Assembly IL Code Common Language Runtime JIT Compiler Native Code Operating System Services Managed code Unmanaged Component
  • 22. Advantages of CLR • Support for developer services (debugging) • Interoperation between managed code and unmanaged code (COM,DLLs). • Managed code environment • Improved memory handling • Improved “garbagecollection”
  • 23. Advantages of CLR • JIT allows code to run in a protected environment as managed code. • JIT allows the IL code to be hardware independent. • CLR also allows for enforcement of code access security. • Verification of type safety.
  • 24. CLR .NET Source Code Base Class Libraries (mscorlib.dll) .NET Execution Engine Class Loader Jitter Platform Specific code Execute .NET Compiler DLL or EXE (CIL) mscoree.dll mscoree.dll MicroSoft Common Object Runtime Execution Engine
  • 25. Dot Net Namespaces • MFC, Java, VB 6.0 have predefined set of classes; C# doesn't • C# uses namespace concept • Any language targeting the .NET runtime makes use of the same namespaces and same types as C# • System is the root namespace
  • 26. Sample .NET namespaces System primitive types, garbage collection, etc System.Collections Container objects: ArrayList, Queue, etc. System.Data System.Data.Common System.Data.OleDb System.Data.SqlClient For Database manipulations ADO .NET System.IO file IO, buffering, etc. System.Drawing System.Drawing.2D GDI+ primitives, bitmaps, fonts, icons, etc. System.Threading Threads
  • 27. Common Data Types CLR provides a set of primitive types that all languages must support.The datatypes include:  Integer—three types 16/32/64bits  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
  • 28. 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 introduced to promote language interoperability  vast majority of classes within FCL are CLS-compliant
  • 29. Comparison to Java Hello.java Hello.class JVM compile execute Hello.vb Hello.exe CLR compile execute Source code Bytecode CILSource code
  • 30. Base Class Library @ FCL Unified Classes Web Classes (ASP.NET) Controls, Caching, Security, Session, Configuration etc System Classes Collections, Diagnostics, Globalization, IO, Security, Threading Serialization, Reflection, Messaging etc Data (ADO.NET) ADO, SQL,Types etc Drawing Classes Drawing, Imaging, Text, etc Windows Forms Design, Cmpnt Model etc XML Classes XSLT, Path, Serialization etc
  • 31. 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 allCLR languages
  • 32. Summary Introduction to .NET Framework Architecture of .NET Framework CTS, CLR, IL, MSIL, CIL