A framework is a set of code or libraries which provide functionality common to a whole class of applications.
.NET framework is a software framework which is developed at Microsoft which can be installed on windows based operating system. The .NET Framework includes two main components „ the Common Language Runtime and the Base Class Libraries.
The Common Language Runtime (CLR) in the .NET Framework manages the execution of the Code and provides access to a variety of services that will make the development process easier. Code that is compiled and targeted to the CLR is known as managed code.
.NET framework was initially released on February 13, 2002. In 2005 .NET frame work 2.0 was released and then .NET 3.0 was released in 2006. .NET 3.0 had number of major updates and latest technologies included with it. Respectively framework 3.5 and 4.0 were released on 2008 and 2010.
.NET 3.5 introduced several latest technologies:
AJAX:
AJAX is a technology which has the support for responsive browser applications. Normally in web applications for each request made by the user requires a page reload, AJAX provides a more intelligent-and faster-approach for serving user requests. Rather than load a new page for each user request, the browser asynchronously requests data in advance.
Language-Integrated Query (LINQ):
Rather than requiring specialized languages and a separate approach for each kind of data, LINQ adds a set of extensions to C# and VB that allow common access to diverse information.
Windows Communication Foundation:
WCF supports communication between .NET applications. WCF has similar functionality compared to web services. WCF provides strong support for interoperable communication via SOAP, an essential part of modern computing.
Windows Presentation Foundation (WPF):
WPF addresses the issues with user interface aspects. It provides more convenient techniques for developers to design user interfaces including support for video, animation, two- and three-dimensional graphics, and various kinds of documents.
.NET framework contains a JIT compiler to compile IL code into machine code. As it compiles to machine code, makes sure that the code is type safe. It does this to ensure that objects are separate, thereby making certain that objects won’t unintentionally corrupt one another.
Assemblies contain the code that is executed by CLR. Assemblies are self describing all information about the assemblies contains with in itself.
Garbage collector with in the .NET framework destroys the unneeded objects so that the developer does not need to monitor the code and destroy the unneeded objects.