.NET > .Net Framework >> About .Net Framework Views : 227606
Rate This Article :

Components of .Net Framework

There are many articles are available in the web on this topic; I just want to add one more article over the web by explaining Components of .Net Framework.

Components of .Net Framework


Net Framework is a platform that provides tools and technologies to develop Windows, Web and Enterprise applications. It mainly contains two components,

1.   Common Language Runtime (CLR)

2.    .Net Framework Class Library.

1. Common Language Runtime (CLR)

.Net Framework
provides runtime environment called Common Language Runtime (CLR).It provides an environment to run all the .Net Programs. The code which runs under the CLR is called as Managed Code. Programmers need not to worry on managing the memory if the programs are running under the CLR as it provides memory management and thread management.

Programmatically, when our program needs memory, CLR allocates the memory for scope and de-allocates the memory if the scope is completed.

Language Compilers (e.g. C#, VB.Net, J#) will convert the Code/Program to Microsoft Intermediate Language (MSIL) intern this will be converted to Native Code by CLR. See the below Fig. 


There are currently over 15 language compilers being built by Microsoft and other companies also producing the code that will execute under CLR.

2.    .Net Framework Class Library (FCL)

This is also called as Base Class Library and it is common for all types of applications i.e. the way you access the Library Classes and Methods in VB.NET will be the same in C#, and it is common for all other languages in .NET.

The following are different types of applications that can make use of .net class library. 

1.                   Windows Application.

2.                   Console Application

3.                   Web Application.

4.                   XML Web Services.

5.                   Windows Services.

In short, developers just need to import the BCL in their language code and use its predefined methods and properties to implement common and complex functions like reading and writing to file, graphic rendering, database interaction, and XML document manipulation.

Below are the few more concepts that we need to know and understand as part of this .Net framework. 

Common Type System (CTS)

It describes set of data types that can be used in different .Net languages in common. (i.e), CTS ensures that objects written in different .Net languages can interact with each other.

For Communicating between programs written in any .NET complaint language, the types have to be compatible on the basic level.

The common type system supports two general categories of types: 

Value types:

Value types directly contain their data, and instances of value types are either allocated on the stack or allocated inline in a structure. Value types can be built-in (implemented by the runtime), user-defined, or enumerations.

Reference types:

Reference types store a reference to the value's memory address, and are allocated on the heap. Reference types can be self-describing types, pointer types, or interface types. The type of a reference type can be determined from values of self-describing types. Self-describing types are further split into arrays and class types. The class types are user-defined classes, boxed value types, and delegates. 

4. Common Language Specification (CLS)

It is a sub set of CTS and it specifies a set of rules that needs to be adhered or satisfied by all language compilers targeting CLR. It helps in cross language inheritance and cross language debugging.

Common language specification Rules:

It describes the minimal and complete set of features to produce code that can be hosted by CLR. It ensures that products of compilers will work properly in .NET environment. 

Sample Rules: 

1.       Representation of text strings 

2.       Internal representation of enumerations 

3.       Definition of static members and this is a subset of the CTS which all .NET languages are expected to support.

4.   Microsoft has defined CLS which are nothing but guidelines that language to follow so that it can communicate with other .NET languages in a seamless manner.

Below mentioned the .Net Architecture stack for easy understanding.

dotnet framework stack.png
About Author
Jayanthan JVP
Total Posts 15
DotNet Developer
Comment this article
Email Address* (Will not be shown on this website.)
Enter Image Text*
View All Comments
very useful article.Thank you so much
k vinod
please send me dotnet material.
karthick mani
Your every works helpful to every new developers....keep on it ,all the best..dear friend
thank you very much,so simply explained .cool
Very useful article. I have few queries. Is CTS is used only by language compilers and CLS is used only by CLR?
very nice explanation sir!!! But, I've a query i.e. Is it correct that dotnet supports 70pls languages.
Naveen Roy
Good Explanation sir.. Thanks
Thanks For basic Explanation
very usefully .net fame work. thanks .
sahil kumar
Good Explain
Thanks For Very Clear Explanation
Hi Jayanthan, The explanation was really very great. cleared all my doubts. Thanks
Lalit pratap
Dear you can't say .Net supported 70 language
ibrahim shaik
Swapnil Tikale
Very good and brief information about working of framework components
Priyanka Bhadouria
good site to learn..
it's good article.it provide whole information about .net framework in easy language
Good article but you should elaborate on CTS
Good Article dude..!!
Bhumika Patel
It is useful and easy to understand.
vry gud.
suraj bhatt
thnk you soo muchh sir for the informationn
chetan butke
i like that notes
vry helpful and easy to understand... thanku
very usefull an easy to understand.. Thak you
janaab sidhu
easy to understand and useful
It is very helpfull and easily to understand
Rohit Yadav
It is very helpfully n easy method.
Sandeep Rajbhar
Its very good.
Ruchir andharia
I am very happy to read your about the .net framework component. One point in this article is not clear in terms practicle senario in my mind that is Comman type specification. Please provide good practicle example in terms of different languages so i clears .
amit Kumar Singh
It's nice
Its Good Explanation and Very Helpful for Understanding for Easy.
its good explanation and very helpful for understanding for easy.
Rajat Saxena
Really useful article. Thank You
Sathish K V
very useful ,simple and convenience to read
such a nice article
it is defined very clearly to understand everyone.
Used for easy to Understand.
wonderful article and very helpful
this artical is too good
Good... Understandable works... V.GOOD.....
Good understandable easily Thanksss!!!
Sathawara Janki
Very Nice And easily understand by readers..!!!!
junior mario
its nice
Dharmendra Chaudhary
Contents are very supporting which have fulfill my query. Thank You.
Rahul Tiwary
Its Nice Article Easily Understanding
Nice articles... Regards, Murugan Email : muruganprofiles@gmail.com
Mallikarjun S
Nice dude............
very clear and simplified explanation of such an important typical concepts..
it is very nice and easy to understand.
Amit Gadhave
Good explanation
Provide me with information about vb.net thank you.
gud,, useful articl
Bhavin Mistry
It is easy to understand provides .net framework 4.0 and content is very easy
Nice artical
very usefull mater
nice mater there
not bed
this is more helpful for us. thank you
Hi nvibhute777 & nitin.jaware25, I have updated this article and also updated the Rules of CLS. Leave your comment if i missed anything. Thanks.
laiiii bhari
this is basic & important point but explin in detail.
may i knw the rules of common language specification? explain exact working of common type system with example?
good article. got much of necessary information.
dia esay to understands
  Privacy   Terms Of Use   Advertise With Us   Contact Us
© 2016 Developerin.Net. All rights reserved.
Trademarks and Article Images mentioned in this site may belongs to Microsoft and other respective trademark owners.
Articles, Tutorials and all other content offered here is for educational purpose only and its author copyrights.