Submit Your Site For Free!

Email Address:
* URL:
*
*Indicates Mandatory Field

Terms & Conditions

Dev Newz
FlashNewz
DevWebPro










What Is .NET?

By James Yang
Expert Author
Article Date: 2002-06-14

.NET Framework
Because of the way the .NET framework is completely transparent when it is integrated into the Windows operating system and other products (such as .NET Enterprise Servers), it allows developers to create applications that are fast, flexible, scalable and efficient. Not only that, but developers are now able to create applications that can interact with other .NET applications and components which were created in a totally different programming language!


This is a new and exciting concept, and is only possible because of the way that the .NET framework has been developed: Microsoft planned to implement this sort of functionality right from the very start. This means that you can create a component in a .NET compatible language, such as C#, and consume that same component with an application that was written in VB.NET.

The concepts and technologies that have been added to the .NET framework include the Common Language Runtime (CLR), Windows Forms (WinForms), ASP.NET and the .NET framework base classes.


.NET framework base classes
The .NET framework base classes are a collection of built-in functions, objects, properties and methods that can be utilized 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 run.

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
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.

Scalability
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.

Cross-Language Integration
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 equalizes the power, complexity and optimization 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.

WinForms
WinForms are an essential part of the Win32 application development system in .NET. They are the .NET standard of the graphics and drawing API's and controls and are available to all of the .NET compatible languages. WinForms are equivalent to MFC for C++ developers, and the Win32 API for VB developers.

Due to the unification and the way they are built, structured and integrated into the CLR, WinForms provide developers with features like a drag and drop designer, which can be used to visually create forms for .NET applications.

ASP.NET
The biggest and most popular change within the .NET framework occurred during the transformation of ASP to ASP.NET. In my opinion, ASP.NET is a completely different language compare to the older, classic version of ASP. A lot of people seem to get confused in relation to ASP.NET and some of its newer features. Let me clear up a couple of things before we continue:

1. ASP.NET is not written in VBScript anymore. It now supports VB.NET, C# and JScript.NET.

2. You cannot use ASP.NET code between <% and %< anymore. Also, you cannot use ASP.NET code in the
3. ASP.NET is based on an event-driven, object-orientated paradigm, not a sequential paradigm, like classic ASP.

4. ASP and ASP.NET share very few similarities, besides their name.

5. ASP.NET used to be called ASP+

ASP.NET is a server side even driven language that is created using any of the .NET languages. Because ASP.NET utilises an even-driven, object-orientated programming paradigm, stronger, more formal syntax is enforced. This helps increase performance significantly, and the use of components, events, properties and methods is now easier.

ASP.NET's most significant benefits over traditional ASP relate directly to its integration with the CLR. ASP.NET takes a lot of features from the CLR, including support for common approach programming. Also, ASP.NET pages are compiled and cached in the servers' memory once they are first executed. This provides a huge speed increases in comparison to traditional ASP pages, which were compiled every time they were executed.

Scalability was another big issue with traditional ASP. Traditional ASP code and HTML could be written, mixed and matched on any one page, making it nearly impossible to keep track of which code was where. Sure, COM objects helped to separate code into tiers, but still a lot of developers just plonked their business logic directly into their ASP pages. Not good.

ASP.NET however, almost completely eliminates this problem. ASP.NET code is object-orientated, and implementation code is kept separate from presentation code. All ASP.NET code is written between the
ASP.NET is a vital part of .NET for many reasons. The most important of these reasons is because ASP.NET pages act as the "super glue" to bind the Internet and Win32 applications closer together. Web services are considered to be part of ASP.NET.

Web services utilise the Simple Object Access Protocol (SOAP) as their core communication protocol. SOAP is based heavily on XML. The purpose of a web service is to allow other developers to be able to access ASP.NET components, functions, or even pre-built web applications (that are configurable online) over the Internet.

Web services allow developers to keep the code and logic for their applications private, only exposing a minimal amount of methods and member variables to implement the web services functionality. This all ties back into Microsoft's vision of "Software as a Service". Web services are an extremely powerful and popular addition to .NET, and really do need to be experienced to be fully appreciated.

Overview of .NET
Over the last couple of pages, I have discussed the .NET architecture, its core components, features and benefits for developers like us. However, let me finish of by summarising everything I have talked about, in a couple of points:

ASP.NET allows you to choose which language you will develop in. Microsoft believes that choosing an actual language will simply come down to the type of lifestyle you are leading. .NET has excellent Internet integration via ASP.NET and web services. .NET applications can be developed quicker and easier thanks to tools like Visual Studio.NET .NET applications are extremely scalable and efficient


Conclusion
In my opinion, .NET is Microsoft's greatest invention since the development of MS-DOS back in the eighties. .NET has advantages for both developers and clients alike.

For developers, we now have all of the tools we need right at our fingertips to create, manage and distribute our applications with ease. We can utilise the Internet like never before. The .NET's CLR also means that our applications are less likely to crash, and more likely to provide us with the results we're looking for: a clean, quick and sturdy implementation with maximum up time and minimum down time.

Clients can expect a whole new range of advanced Internet equipped components and services to help meet their demands more easily. Just imagine a couple of years down the track; you might be the developer creating a web service to help your clients train their new employees online, without any human intervention. The possibilities are endless with .NET, and things can only get better from here!

Related Links:

http://www.microsoft.com/net
http://www.asp.net
http://www.asplists.com

About the Author:
James is from Wollongong, Australia and is still studying. He is a MCDBA, MCSE and MCSA, and has 4 years of programming experience. This article is from Mitchell Harper's site http://www.devarticles.com: After FREE programming eBooks? Want to learn XML, Java, Visual Basic, HTML, or how to promote your site for free? Our collection of free eBook downloads might be just the thing you need. Ready to download? Visit http://www.devarticles.com/ebooks.php now!




Newsletter Archive | Article Archive | Submit Article | Advertising Information | About Us | Contact

Dev Newz is an iEntry, Inc.® publication - 1998-2008 All Rights Reserved Privacy Policy and Legal