The .NET (note capitalization) initiative is a Microsoft project to create a new software development platform focused on network transparency, platform independence, and rapid application development.

Table of contents
1 The Strategy
2 The Enterprise Infrastructure
3 Supporting Products
4 .NET Languages
5 .NET vs. J2EE
6 .NET vs. COM
7 Standardization and Open Source
8 External links

The Strategy

First, .NET is a strategic initiative, seen by some as a way for Microsoft to come to dominate the Internet the way it does the desktop and other computing devices.

The Enterprise Infrastructure

Second, .NET is a software platform, which was released in 2002. It presents a platform-independent target for software development, with many built-in features including Internet integration and features intended to enhance security. It relies fully on the software componentry and component-oriented programming paradigms. In this respect it largely replaces the former component object model (COM).

Supporting Products

Third, .NET is a collection of development environments and software packages that are new versions of existing Microsoft products geared toward the .NET platform, including a more advanced Visual Studio.

.NET Languages

The CLI is designed to provide support for any object-oriented programming language, sharing a common object model and a large common class library.

Microsoft and other vendors provide .NET versions of many languages, including:

Notes:
  • many of these compilers are free (the vendors sell IDEss).
  • most languages have significant adjustments to fit into the .NET Framework. The vendors have often used this as an excuse to vary other features of the languages at the same time.

The Microsoft support resource MSDN is emphasizing the .NET languages.

.NET vs. J2EE

The CLI, the MSIL and C# have similarities to Sun Microsystems' Java Virtual Machine and Sun's Java, hence they are fierce competitors. Both use their own intermediate bytecode. .NET is currently only fully available on Windows platforms, whereas Java is available on many platforms. Sun's product, J2EE, has been on the market longer, and has strong component structure.

.NET vs. COM

The previous software component technology endorsed by Microsoft for large-scale software systems was the Component object model or COM. While .NET may wrap COM-objects and vice versa, it has been clearly stated by Microsoft that .NET will eventually replace COM as a software component architecture. New applications addressing the Win32 platform should not use COM, but .NET.

Standardization and Open Source

Microsoft has submitted a part of the specifications of .NET to ECMA and ISO for standardization. This is a calculated risk, but it may encourage standards-compliant implementations, to provide an ongoing bridge for non-Windows software to be converted to Microsoft .NET.

An open source implementation of the .NET architecture is in progress. It is targeted at UNIX/Linux variants. It has been dubbed Mono, and development is sponsored by Ximian. There is also another Linux implementation of .NET that is part of the dotGNU project known as Portable.NET.

It has been speculated that .NET is Microsoft's strategic response to Linux. The reasoning is that by creating a new higher-level cross-platform software platform, Microsoft can move its core platform higher up the software stack, enabling it to replace the old Win32 platform running on the Windows kernel with a new system which can run on Windows, Linux or any other operating system.

External links


In Internet nomenclature, .net is a Top-level domain, or TLD, as is .com.