Hey all! A happy Tech-Tuesday from me to all of you my dear readers! :D So how are you all doing? I hope fine! :D :D :D
You all must have read the title, of course! What we are gonna discuss today is .NET Framework. We all have installed games/software/update to our Windows PC and have seen this .NET Framework being something quietly present always and sometimes giving up hiccups with our installations saying .NET Framework has some problem! But what exactly is .NET Framework? That's we gonna discuss in our today's Tech-Tuesday! :D
The .NET Framework (pronounced dot net) is a software framework developed by Microsoft that runs primarily on Microsoft Windows. It includes a large library and provides language interoperability (each language can use code written in other languages) across several programming languages. Programs written for the .NET Framework execute in a software environment (as contrasted to hardware environment), known as the Common Language Runtime (CLR), an application virtual machine that provides important services such as security, memory management, and exception handling. The class library and the CLR together constitute the .NET Framework.
Okay, you got it? NO? OMG! Let's take things line-by-line one at a time. The first line ain't that worthy of demanding an explanation so please! Improve upon thy English if you don't get it! :P Now the next one means that, for example, I wrote a code in C++ and made that program under the .NET technology, once my program is built, I can use that program in some program I made in C# also! Simple, interoperability between languages! That's so cooool! :D The next line which tells about the CLR is another outstandingly amazing feature of the .NET! Actually when we interact with the hardware directly we are at a risk of overwriting something important which is stored in the hardware already. In such a case a virtual environment helps duplicate the hardware virtually, that is, providing our program virtual hardware which actually is software mimicking hardware for our that program. Now that means, we are at no risk to over-write something too important! That makes it a superb feature of the .NET Technology. It's in-built features of memory-management and garbage collection help us make the programs without worrying about such things which sometimes get things messy!
The .NET Framework's Base Class Library provides user interface, data access, database connectivity, cryptography, web application development, numeric algorithms, and network communications. Programmers produce software by combining their own source code with the .NET Framework and other libraries. The .NET Framework is intended to be used by most new applications created for the Windows platform. Microsoft also produces a popular integrated development environment largely for .NET software called Visual Studio. The above tonnes of features that come inside this technology makes things go easier for the developers. For example, I need to make a big software which uses Sorting, Fibonacci Series, and many such similar mathematical operations. Of course I would need to make functions in my program for all these. Now that makes the things go messy again since it adds to much labor to an already big project. Since the base Class Library provides such functions already, my task goes easier and I have to make optimal logic for my software and not my basic requirements anymore! Next, the Visual Studio is perhaps the best IDE(Integrated Development Environment) I have ever used, no doubt in that. It's one the most superb feature that I love is the IntelliSense. It helps me identates my code itself and moreover assists with idiotic mistakes a programmer may commit during the course of development.
Microsoft started the development on the .NET Framework in the late 1990s originally under the name of Next Generation Windows Services (NGWS). By late 2000 the first beta versions of .NET 1.0 were released.
Version 3.0 of the .NET Framework is included with Windows Server 2008 and Windows Vista. Version 3.5 is included with Windows 7, and can also be installed on Windows XP and the Windows Server 2003 family of operating systems. On 12 April 2010, .NET Framework 4 was released alongside Visual Studio 2010.
The .NET Framework family also includes two versions for mobile or embedded device use. A reduced version of the framework, the .NET Compact Framework, is available on Windows CE platforms, including Windows Mobile devices such as smartphones. Additionally, the .NET Micro Framework is targeted at severely resource-constrained devices.
For details about some specific cool components of the .NET Technology, you may refer to the following Wikipedia Articles which do contain a good bibliography for interested readers.
.NET Framework
Common Language Runtime
Common Language Infrastructure
Common Intermediate Language
Common Type System
Metadata
Virtual Execution System