SlideShare a Scribd company logo
Part 2
Introduction to
Programming in .NET
Learning Objectives Overview
Lecturer: Jareed Eve;2
 .NET Languages
 Different types of .NET frameworks architectures
 Common Language Infrastructure (CLI),
Assemblies, Metadata, Security, Memory
Management, Class Library*
 Framework Versions (4, 3.5, 3, 2, etc.)
 Common Language Runtime*, .NET Class Libraries
 .NET Framework Components
 The Common Language Runtime
 The Class Library
.NET Languages /1
Lecturer: Jareed Eve;3
 A#
 A# is a port of the Ada programming language. A# is freely distributed by the Department
of Computer Science at the United States Air Force Academy as a service to the Ada
community under the terms of the GNU General Public License.
 Ada was originally designed by a team led by Jean Ichbiah of CII Honeywell Bull under
contract to the United States Department of Defense (DoD) from 1977 to 1983 to
supersede the hundreds of programming languages then used by the DoD.
 C#
 Developed by Microsoft, C# is intended to be a simple, modern, general-purpose, object-
oriented programming language.
 It was developed by Microsoft within its .NET initiative and later approved as a standard
by Ecma and ISO.
 F#
 F# is developed by The F# Software Foundation and Microsoft
 An open-source, strongly typed, multi-paradigm programming language. F# is most often
used as a cross-platform CLI language, but can also be used to generate JavaScript and
GPU code.
 L#
 The language was designed by Rob Blackwell, as was its first implementation.
 L# .NET is a dynamic computer programming language intended to be compiled and
executed on the Ecma-334 and Ecma-335 Common Language Infrastructure (CLI). It is a
dialect of Lisp, adapted from Paul Graham's proposed Arc language.
.NET Languages /2
Lecturer: Jareed Eve;4
 C++
 C++/CLI (Common Language Infrastructure) is a language specification
created by Microsoft and intended to supersede Managed Extensions
for C++.
 Boo
 Developed by Rodrigo B. De Oliveira, Boo is an object-oriented,
statically typed, general-purpose programming language that seeks to
make use of the Common Language Infrastructure's support for Unicode,
internationalization, and web applications, while using a Python-inspired
syntax and a special focus on language and compiler extensibility.
 Cobra
 Cobra is an Object Oriented language designed by Charles Esterbrook
 It is strongly influenced by Python,C#, Eiffel, Objective-C, and other
programming languages
 Cobra is an open-source project; it was released under the MIT License
on February 29, 2008.
 JScript .NET
 Developed by Microsoft, JScript has a strong foundation in Microsoft's
ActiveX/COM technologies, and relies primarily on ActiveX components
to provide much of its functionality (including database access via ADO,
file handling, etc.), whereas JScript .NET uses the .NET Framework to
provide equivalent functionality.
.NET Languages /3
Lecturer: Jareed Eve;5
 IronPython, IronRuby
 IronPython is an implementation of the Python programming language
targeting the .NET Framework
 Jim Hugunin created the project and actively contributed to it up until
Version 1.0 which was released on September 5, 2006. Thereafter, it was
maintained by a small team at Microsoft until the 2.7 Beta 1 release;
Microsoft abandoned IronPython (and its sister project IronRuby) in late
2010, after which event Hugunin left to work at Google. IronPython 2.0
was released on December 10, 2008.
 IronRuby is an implementation of the Ruby programming language
targeting Microsoft .NET framework
 Visual Basic.NET
 Visual Basic .NET (VB.NET) (created by Microsoft) is an object-oriented
computer programming language that can be viewed as an evolution of
the classic Visual Basic (VB), implemented on the .NET Framework
 IronLISP
 IronLisp was an implementation of the Lisp programming language
targeting the Microsoft .NET framework. It was developed and
announced by Xacc.ide on July 23, 2007. No further development will
take place on IronLisp.
.NET Frameworks Architectures
/1
Lecturer: Jareed Eve;6
 Common Language Infrastructure (CLI)
 This is an open specification developed by
Microsoft and standardized by ISO and
ECMA.
 It describes the executable code and runtime
environment that form the core of the
Microsoft .NET Framework and the free
and open source implementations Mono and
Portable.NET.
 The specification defines an environment
that allows multiple high-level languages to
be used on different computer platforms
without being rewritten for specific
Lecturer: Jareed Eve;7
.NET Frameworks Architectures
/2
Lecturer: Jareed Eve;8
 Common Language Infrastructure (CLI)
 Metadata
Describes the high-level structure of the code.
Metadata describes all classes and class members
that are defined in the assembly, and the classes
and class members that the current assembly will
call from another assembly.
 Common Language Specification (CLS)
A set of base rules to which any language targeting
the CLI should conform in order to interoperate with
other CLS-compliant languages. The CLS rules
define a subset of the Common Type System.
.NET Frameworks Architectures
/3
Lecturer: Jareed Eve;9
 Common Language Infrastructure (CLI)
 Common Type System (CTS)
A set of data types and operations that are shared
by all CTS-compliant programming languages.
 Virtual Execution System (VES)
The VES loads and executes CLI-compatible
programs, using the metadata to combine
separately generated pieces of code at runtime.
.NET Frameworks Architectures
/4
Lecturer: Jareed Eve;10
 Common Language Infrastructure (CLI)
Assembly
 An assembly in the Common Language
Infrastructure (CLI) is a compiled code library used
for deployment, versioning, and security.
 There are two types: process assemblies (EXE)
and
library assemblies (DLL).
 A process assembly represents a process that will
use classes defined in library assemblies.
 CLI assemblies contain code which is generated
from a CLI language, and then compiled into
machine language at run time by the just-in-time
compiler. In the .NET framework implementation,
this compiler is part of the Common Language
.NET Frameworks Architectures
/5
Lecturer: Jareed Eve;11
 Common Language Infrastructure (CLI)
Security
 .NET has its own security mechanism with 2 general
features:
 Code Access Security (CAS), and
 Validation and verification.
 Code Access Security is based on evidence that is
associated with a specific assembly.
 Typically the evidence is the source of the assembly.
 Code Access Security uses evidence to determine
the permissions granted to the code. Other code can
demand that calling code is granted a specified
permission.
.NET Frameworks Architectures
/5
Lecturer: Jareed Eve;12
 Common Language Infrastructure (CLI)
Memory Management
 Automatic memory management is one of the
services that the common language runtime
provides. The garbage collector manages the
allocation and release of memory for an application.
 Allocating Memory
When you initialize a new process, the runtime
reserves a contiguous region of address space for
the process.
 Releasing Memory
The garbage collector's optimizing engine
determines the best time to perform a collection
based on the allocations being made. When the
garbage collector performs a collection, it releases
.NET Frameworks Architectures
/6
Lecturer: Jareed Eve;13
Lecturer: Jareed Eve;14
Class Library
Lecturer: Jareed Eve;15
 The .NET Framework includes a set of standard class
libraries.
 The class library is organized in a hierarchy of
namespaces. Most of the built-in APIs are part of
either System.* or Microsoft.* namespaces.
 These class libraries implement a large number of
common functions, such as file reading and writing,
graphic rendering, database interaction, and XML
document manipulation, among others. The .NET
class libraries are available to all CLI compliant
languages.
 The .NET Framework class library is divided into two
parts:
 the Base Class Library and
 the Framework Class Library
Common Language Runtime /1
Lecturer: Jareed Eve;16
 The Common Language Runtime (CLR) is the
virtual machine component of Microsoft's .NET
framework and is responsible for managing the
execution of .NET programs.
 In a process known as Just-in-time compilation, the
compiled code is converted into machine instructions
that, in turn, are executed by the computer's CPU.
 The CLR provides additional services including
memory management, type safety and exception
handling. It provides exception handling, garbage
collection and thread management. CLR is common
to all versions of the .NET framework.
 The CLR is Microsoft's implementation of the
Common Language Infrastructure (CLI) standard.
Common Language Runtime /2
Lecturer: Jareed Eve;17
THE END
Lecturer: Jareed Eve;18
Lecturer: Jareed Eve;19

More Related Content

What's hot (17)

PPTX
Dotnet1
Sudhriti Gupta
 
PPTX
Introduction to .NET Programming
Karthikeyan Mkr
 
PPTX
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
Antonio Chagoury
 
PPT
Introduction .NET Framework
javadib
 
PPT
Introducation to C#
musrath mohammad
 
PPTX
Session i
DrUjwala1
 
PPTX
Overview of .Net Framework 4.5
Bhushan Mulmule
 
PPT
.Net Overview
Pankaj Rattan
 
PPTX
3.0 Introduction to .NET Framework
Abdelrahman Hosny
 
PDF
Dot net
public
 
PPTX
.Net framework
Raghu nath
 
PPT
c#.Net Windows application
veera
 
PPT
Introduction to VB.net
Yousaf Sahota
 
PPT
Introduction to .NET Framework
Raghuveer Guthikonda
 
PPT
Microsoft dot net framework
Instantenigma
 
PPTX
Introduction to .net
Jaya Kumari
 
DOCX
New microsoft office word document
SIVAJISADHANA
 
Introduction to .NET Programming
Karthikeyan Mkr
 
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
Antonio Chagoury
 
Introduction .NET Framework
javadib
 
Introducation to C#
musrath mohammad
 
Session i
DrUjwala1
 
Overview of .Net Framework 4.5
Bhushan Mulmule
 
.Net Overview
Pankaj Rattan
 
3.0 Introduction to .NET Framework
Abdelrahman Hosny
 
Dot net
public
 
.Net framework
Raghu nath
 
c#.Net Windows application
veera
 
Introduction to VB.net
Yousaf Sahota
 
Introduction to .NET Framework
Raghuveer Guthikonda
 
Microsoft dot net framework
Instantenigma
 
Introduction to .net
Jaya Kumari
 
New microsoft office word document
SIVAJISADHANA
 

Viewers also liked (15)

PPT
20. Object-Oriented Programming Fundamental Principles
Intro C# Book
 
PPT
Architecture of .net framework
Then Murugeshwari
 
DOCX
Advanced System Analysis And Design
Anit Thapaliya
 
DOCX
Library Automation
Ra Alvi
 
DOC
construction of Reservation software solution for Airline Companies project ...
Hagi Sahib
 
PDF
Dlis007 library automation
saniul rahaman
 
PDF
Dotnet basics
Mir Majid
 
PPTX
Introduction to .NET Framework and C# (English)
Vangos Pterneas
 
PPSX
Introduction to .net framework
Arun Prasad
 
POTX
Library Management System
Faculty of Science , portsaid Univeristy
 
PPTX
La perdurabilidad en las empresas familiasde
mariaperezgamboa
 
PPTX
.NET Framework 4.0 – Changes & Benefits
Deepika Chaudhary
 
DOCX
AUTOMATED LIBRARY MANAGEMENT SYSTEM
Abhishek Kumar
 
DOCX
Library Management System
Aditya Shah
 
DOC
Hospital management system
Mohammad Safiullah
 
20. Object-Oriented Programming Fundamental Principles
Intro C# Book
 
Architecture of .net framework
Then Murugeshwari
 
Advanced System Analysis And Design
Anit Thapaliya
 
Library Automation
Ra Alvi
 
construction of Reservation software solution for Airline Companies project ...
Hagi Sahib
 
Dlis007 library automation
saniul rahaman
 
Dotnet basics
Mir Majid
 
Introduction to .NET Framework and C# (English)
Vangos Pterneas
 
Introduction to .net framework
Arun Prasad
 
Library Management System
Faculty of Science , portsaid Univeristy
 
La perdurabilidad en las empresas familiasde
mariaperezgamboa
 
.NET Framework 4.0 – Changes & Benefits
Deepika Chaudhary
 
AUTOMATED LIBRARY MANAGEMENT SYSTEM
Abhishek Kumar
 
Library Management System
Aditya Shah
 
Hospital management system
Mohammad Safiullah
 
Ad

Similar to 02 intro to programming in .net (part 2) (20)

PPTX
.Net slid
pacatarpit
 
PPTX
.NET Framework
vijayakumari kaliannan
 
PPT
Introdot Netc Sharp En
Gregory Renard
 
PPT
Best DotNet Training in Delhi
Information Technology
 
PPTX
.Net Framework
MohamadKrm
 
PPT
Microsoft .NET (dotnet) Framework 2003 - 2004 overview and web services…
Lorenz Lo Sauer
 
PPTX
Session2 (3)
DrUjwala1
 
PPTX
Introduction to .NET by QuontraSolutions
QUONTRASOLUTIONS
 
PPT
Introduction to ,NET Framework
ANURAG SINGH
 
PDF
Net framework
ANAGHA T SASIDHARAN
 
PPSX
Introductionto .netframework by Priyanka Pinglikar
PriyankaPinglikar
 
PPT
.NET Overview
Greg Sohl
 
PPT
ASP.NET 01 - Introduction
Randy Connolly
 
PPT
SynapseIndia dotnet web development architecture module
Synapseindiappsdevelopment
 
PPT
Net framework
mayankingeniar
 
PPTX
Chapter1_Part1.pptx
RaajzKoirala
 
PDF
.NET TECHNOLOGIES
Prof Ansari
 
PPTX
Vb ch 2-introduction_to_.net
bantamlak dejene
 
PPT
Introduction To Dotnet
SAMIR BHOGAYTA
 
PPTX
.Net the begining
cncwebworld
 
.Net slid
pacatarpit
 
.NET Framework
vijayakumari kaliannan
 
Introdot Netc Sharp En
Gregory Renard
 
Best DotNet Training in Delhi
Information Technology
 
.Net Framework
MohamadKrm
 
Microsoft .NET (dotnet) Framework 2003 - 2004 overview and web services…
Lorenz Lo Sauer
 
Session2 (3)
DrUjwala1
 
Introduction to .NET by QuontraSolutions
QUONTRASOLUTIONS
 
Introduction to ,NET Framework
ANURAG SINGH
 
Net framework
ANAGHA T SASIDHARAN
 
Introductionto .netframework by Priyanka Pinglikar
PriyankaPinglikar
 
.NET Overview
Greg Sohl
 
ASP.NET 01 - Introduction
Randy Connolly
 
SynapseIndia dotnet web development architecture module
Synapseindiappsdevelopment
 
Net framework
mayankingeniar
 
Chapter1_Part1.pptx
RaajzKoirala
 
.NET TECHNOLOGIES
Prof Ansari
 
Vb ch 2-introduction_to_.net
bantamlak dejene
 
Introduction To Dotnet
SAMIR BHOGAYTA
 
.Net the begining
cncwebworld
 
Ad

Recently uploaded (20)

DOCX
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
PDF
SIZING YOUR AIR CONDITIONER---A PRACTICAL GUIDE.pdf
Muhammad Rizwan Akram
 
PDF
Kit-Works Team Study_20250627_한달만에만든사내서비스키링(양다윗).pdf
Wonjun Hwang
 
PPTX
Designing_the_Future_AI_Driven_Product_Experiences_Across_Devices.pptx
presentifyai
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PDF
NLJUG Speaker academy 2025 - first session
Bert Jan Schrijver
 
PDF
How do you fast track Agentic automation use cases discovery?
DianaGray10
 
PDF
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
Edge AI and Vision Alliance
 
PDF
Staying Human in a Machine- Accelerated World
Catalin Jora
 
PPTX
Agentforce World Tour Toronto '25 - MCP with MuleSoft
Alexandra N. Martinez
 
PDF
“Squinting Vision Pipelines: Detecting and Correcting Errors in Vision Models...
Edge AI and Vision Alliance
 
PDF
What’s my job again? Slides from Mark Simos talk at 2025 Tampa BSides
Mark Simos
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
PDF
NASA A Researcher’s Guide to International Space Station : Physical Sciences ...
Dr. PANKAJ DHUSSA
 
PPT
Ericsson LTE presentation SEMINAR 2010.ppt
npat3
 
PDF
Transcript: Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
PPTX
Seamless Tech Experiences Showcasing Cross-Platform App Design.pptx
presentifyai
 
PPTX
Mastering ODC + Okta Configuration - Chennai OSUG
HathiMaryA
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
SIZING YOUR AIR CONDITIONER---A PRACTICAL GUIDE.pdf
Muhammad Rizwan Akram
 
Kit-Works Team Study_20250627_한달만에만든사내서비스키링(양다윗).pdf
Wonjun Hwang
 
Designing_the_Future_AI_Driven_Product_Experiences_Across_Devices.pptx
presentifyai
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
NLJUG Speaker academy 2025 - first session
Bert Jan Schrijver
 
How do you fast track Agentic automation use cases discovery?
DianaGray10
 
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
Edge AI and Vision Alliance
 
Staying Human in a Machine- Accelerated World
Catalin Jora
 
Agentforce World Tour Toronto '25 - MCP with MuleSoft
Alexandra N. Martinez
 
“Squinting Vision Pipelines: Detecting and Correcting Errors in Vision Models...
Edge AI and Vision Alliance
 
What’s my job again? Slides from Mark Simos talk at 2025 Tampa BSides
Mark Simos
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
NASA A Researcher’s Guide to International Space Station : Physical Sciences ...
Dr. PANKAJ DHUSSA
 
Ericsson LTE presentation SEMINAR 2010.ppt
npat3
 
Transcript: Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
Seamless Tech Experiences Showcasing Cross-Platform App Design.pptx
presentifyai
 
Mastering ODC + Okta Configuration - Chennai OSUG
HathiMaryA
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 

02 intro to programming in .net (part 2)

  • 2. Learning Objectives Overview Lecturer: Jareed Eve;2  .NET Languages  Different types of .NET frameworks architectures  Common Language Infrastructure (CLI), Assemblies, Metadata, Security, Memory Management, Class Library*  Framework Versions (4, 3.5, 3, 2, etc.)  Common Language Runtime*, .NET Class Libraries  .NET Framework Components  The Common Language Runtime  The Class Library
  • 3. .NET Languages /1 Lecturer: Jareed Eve;3  A#  A# is a port of the Ada programming language. A# is freely distributed by the Department of Computer Science at the United States Air Force Academy as a service to the Ada community under the terms of the GNU General Public License.  Ada was originally designed by a team led by Jean Ichbiah of CII Honeywell Bull under contract to the United States Department of Defense (DoD) from 1977 to 1983 to supersede the hundreds of programming languages then used by the DoD.  C#  Developed by Microsoft, C# is intended to be a simple, modern, general-purpose, object- oriented programming language.  It was developed by Microsoft within its .NET initiative and later approved as a standard by Ecma and ISO.  F#  F# is developed by The F# Software Foundation and Microsoft  An open-source, strongly typed, multi-paradigm programming language. F# is most often used as a cross-platform CLI language, but can also be used to generate JavaScript and GPU code.  L#  The language was designed by Rob Blackwell, as was its first implementation.  L# .NET is a dynamic computer programming language intended to be compiled and executed on the Ecma-334 and Ecma-335 Common Language Infrastructure (CLI). It is a dialect of Lisp, adapted from Paul Graham's proposed Arc language.
  • 4. .NET Languages /2 Lecturer: Jareed Eve;4  C++  C++/CLI (Common Language Infrastructure) is a language specification created by Microsoft and intended to supersede Managed Extensions for C++.  Boo  Developed by Rodrigo B. De Oliveira, Boo is an object-oriented, statically typed, general-purpose programming language that seeks to make use of the Common Language Infrastructure's support for Unicode, internationalization, and web applications, while using a Python-inspired syntax and a special focus on language and compiler extensibility.  Cobra  Cobra is an Object Oriented language designed by Charles Esterbrook  It is strongly influenced by Python,C#, Eiffel, Objective-C, and other programming languages  Cobra is an open-source project; it was released under the MIT License on February 29, 2008.  JScript .NET  Developed by Microsoft, JScript has a strong foundation in Microsoft's ActiveX/COM technologies, and relies primarily on ActiveX components to provide much of its functionality (including database access via ADO, file handling, etc.), whereas JScript .NET uses the .NET Framework to provide equivalent functionality.
  • 5. .NET Languages /3 Lecturer: Jareed Eve;5  IronPython, IronRuby  IronPython is an implementation of the Python programming language targeting the .NET Framework  Jim Hugunin created the project and actively contributed to it up until Version 1.0 which was released on September 5, 2006. Thereafter, it was maintained by a small team at Microsoft until the 2.7 Beta 1 release; Microsoft abandoned IronPython (and its sister project IronRuby) in late 2010, after which event Hugunin left to work at Google. IronPython 2.0 was released on December 10, 2008.  IronRuby is an implementation of the Ruby programming language targeting Microsoft .NET framework  Visual Basic.NET  Visual Basic .NET (VB.NET) (created by Microsoft) is an object-oriented computer programming language that can be viewed as an evolution of the classic Visual Basic (VB), implemented on the .NET Framework  IronLISP  IronLisp was an implementation of the Lisp programming language targeting the Microsoft .NET framework. It was developed and announced by Xacc.ide on July 23, 2007. No further development will take place on IronLisp.
  • 6. .NET Frameworks Architectures /1 Lecturer: Jareed Eve;6  Common Language Infrastructure (CLI)  This is an open specification developed by Microsoft and standardized by ISO and ECMA.  It describes the executable code and runtime environment that form the core of the Microsoft .NET Framework and the free and open source implementations Mono and Portable.NET.  The specification defines an environment that allows multiple high-level languages to be used on different computer platforms without being rewritten for specific
  • 8. .NET Frameworks Architectures /2 Lecturer: Jareed Eve;8  Common Language Infrastructure (CLI)  Metadata Describes the high-level structure of the code. Metadata describes all classes and class members that are defined in the assembly, and the classes and class members that the current assembly will call from another assembly.  Common Language Specification (CLS) A set of base rules to which any language targeting the CLI should conform in order to interoperate with other CLS-compliant languages. The CLS rules define a subset of the Common Type System.
  • 9. .NET Frameworks Architectures /3 Lecturer: Jareed Eve;9  Common Language Infrastructure (CLI)  Common Type System (CTS) A set of data types and operations that are shared by all CTS-compliant programming languages.  Virtual Execution System (VES) The VES loads and executes CLI-compatible programs, using the metadata to combine separately generated pieces of code at runtime.
  • 10. .NET Frameworks Architectures /4 Lecturer: Jareed Eve;10  Common Language Infrastructure (CLI) Assembly  An assembly in the Common Language Infrastructure (CLI) is a compiled code library used for deployment, versioning, and security.  There are two types: process assemblies (EXE) and library assemblies (DLL).  A process assembly represents a process that will use classes defined in library assemblies.  CLI assemblies contain code which is generated from a CLI language, and then compiled into machine language at run time by the just-in-time compiler. In the .NET framework implementation, this compiler is part of the Common Language
  • 11. .NET Frameworks Architectures /5 Lecturer: Jareed Eve;11  Common Language Infrastructure (CLI) Security  .NET has its own security mechanism with 2 general features:  Code Access Security (CAS), and  Validation and verification.  Code Access Security is based on evidence that is associated with a specific assembly.  Typically the evidence is the source of the assembly.  Code Access Security uses evidence to determine the permissions granted to the code. Other code can demand that calling code is granted a specified permission.
  • 12. .NET Frameworks Architectures /5 Lecturer: Jareed Eve;12  Common Language Infrastructure (CLI) Memory Management  Automatic memory management is one of the services that the common language runtime provides. The garbage collector manages the allocation and release of memory for an application.  Allocating Memory When you initialize a new process, the runtime reserves a contiguous region of address space for the process.  Releasing Memory The garbage collector's optimizing engine determines the best time to perform a collection based on the allocations being made. When the garbage collector performs a collection, it releases
  • 15. Class Library Lecturer: Jareed Eve;15  The .NET Framework includes a set of standard class libraries.  The class library is organized in a hierarchy of namespaces. Most of the built-in APIs are part of either System.* or Microsoft.* namespaces.  These class libraries implement a large number of common functions, such as file reading and writing, graphic rendering, database interaction, and XML document manipulation, among others. The .NET class libraries are available to all CLI compliant languages.  The .NET Framework class library is divided into two parts:  the Base Class Library and  the Framework Class Library
  • 16. Common Language Runtime /1 Lecturer: Jareed Eve;16  The Common Language Runtime (CLR) is the virtual machine component of Microsoft's .NET framework and is responsible for managing the execution of .NET programs.  In a process known as Just-in-time compilation, the compiled code is converted into machine instructions that, in turn, are executed by the computer's CPU.  The CLR provides additional services including memory management, type safety and exception handling. It provides exception handling, garbage collection and thread management. CLR is common to all versions of the .NET framework.  The CLR is Microsoft's implementation of the Common Language Infrastructure (CLI) standard.
  • 17. Common Language Runtime /2 Lecturer: Jareed Eve;17

Editor's Notes

  • #9: http://en.wikipedia.org/wiki/Metadata_(CLI)
  • #11: http://en.wikipedia.org/wiki/Assembly_(CLI)
  • #16: The Base Class Library (BCL) includes a small subset of the entire class library and is the core set of classes that serve as the basic API of the Common Language Runtime. The classes in mscorlib.dll and some of the classes in System.dll and System.core.dll are considered to be a part of the BCL. The BCL classes are available in both .NET Framework as well as its alternative implementations including .NET Compact Framework, Microsoft Silverlight and Mono.The Framework Class Library (FCL) is a superset of the BCL classes and refers to the entire class library that ships with .NET Framework. It includes an expanded set of libraries, including Windows Forms, ADO.NET, ASP.NET, Language Integrated Query, Windows Presentation Foundation, Windows Communication Foundation among others. The FCL is much larger in scope than standard libraries for languages like C++, and comparable in scope to the standard libraries of Java.
  • #17: All programs written for the .NET framework, regardless of programming language, are executed by the CLR.
  • #18: All programs written for the .NET framework, regardless of programming language, are executed by the CLR.