Sure, you've heard about .NET... maybe you're a Visual Basic programmer for a small company, maybe you write SQL stored procedures for a huge company, or maybe you're just a Microsoft developer wanting to keep on the cutting edge of technology. In this article, James will explain exactly what .NET is, how it works, how we (as developers) can benefit from it, its many new features, and other .NET related information.
The Evolution Of Microsoft: .NET Explained - The .NET framework (contd.) (Page 4 of 7 )
.NET framework base classes
The .NET framework base classes are a collection of built-in functions, objects, properties and methods that can be utilised by any .NET compatible language. ADO.NET resides in this part of the .NET architecture, and provides developers with functions, objects, properties and methods to access, view and manipulate databases. The tools that we require as developers to work with XML are also included in these base classes.
The Common Language Runtime
The Common Language Runtime (CLR) is the heart of the .NET framework, and is responsible for the execution and management of .NET Applications, as well as the compilation of .NET applications into native code. The CLR is the environment under which .NET applications are ran.
The CLR offers developers many useful and important features and benefits: Simpler Rapid Application Development (RAD), memory management, scalability and common approach programming/cross language integration.
Simpler Rapid Application Development
The concept of rapid application development is not a new one. Because the .NET framework base classes provide developers with pre-written, built-in functionality, and the ability to reuse source code that already exists, the amount of code that a developer needs to write to create an application is reduced by a significant amount.
Memory management is one of the most important features provided by the CLR. It works behind the scenes, and gives developers more of an opportunity to concentrate on building their application, rather than worrying about the nitty-gritty aspects of memory management. When the CLR allocates memory to variables and objects declared within an application, its garbage collection (GC) mechanism makes sure that whenever a value is assigned NULL, or goes out of scope, that its memory is freed, and can be allocated to another variable or object right away. This significantly reduces the amount of memory wasted by applications.
Increased scalability is a direct result from the issues I have already discussed above, including rapid application development and memory management. Rapid application development allows you to spend more time tweaking and improving your applications performance, while the built-in memory management features of the CLR improves the in-memory performance and number of resources available to your application at any given time.
This feature is probably the most talked about when developers are discussing .NET. It is a radical and very significant change from the traditional concepts, because it brings all of the .NET languages up-to-par with each other. For example, although C++ is generally considered and accepted as being more powerful that Visual Basic, .NET has discarded this idea. All .NET applications are compiled into Intermediate Language (IL). The Intermediate Language equalises the power, complexity and optimisation across all of the .NET languages before they are compiled into native machine code.
For a programming language to be considered “.NET compatible”, its source code must be able to be compiled into Intermediate Language.