Dot-NET

.NET ist eine Entwicklungsplattform von Microsoft. Folgende Attribute beschreiben deren Strategie: Modularität, Wiederverwendbarkeit, Plattformunabhängigkeit, Sprachunabhägigkeit, Selbstbeschreibung sowie Internetausrichtung und -technologie. 

Common Language Runtime, WinFX und Common Language Infrastructure
Die .NET-Plattform besteht aus einer Laufzeitumgebung (die Common Language Runtime, CLR),  einer Sammlung von Klassenbibliotheken (WinFX bzw. Framework Class Library (FCL)), den unterstützenden Programmiersprachen, der grafischen Entwicklungsumgebung  Visual Studio, sowie einer Reihe von Diensten. Das .NET-Framework ist eine Spezifikation der Common Language Infrastructure (CLI), einem ECMA-Standard (European Computer Manufacturers Association)  für sprach- und plattformunabhängige Anwendungsentwicklung und -ausführung.

.NET-Geschichte und .NET-Strategie
Die .NET-Strategie entwickelte sich in den 90er Jahren aus der Gefährdung der Vorherrschaft von  Microsoft in PC-Schlüsseltechnologien durch die plattformunabhängige Programmiersprache Java von Sun Microsystems.  Eine eigene Java-Version von Microsoft gefährdete die Plattformunabhängigkeit von Java und wurde zudem von Sun gerichtlich unterbunden. Die .NET-Strategie sollte die Unabhängigkeit von Microsoft wieder herstellen und als  plattformunabhängige Entwicklungsumgebung gegen Java antreten. Zudem sollten veraltete Technologien wie COM und DCOM sowie API-Aufrufe auf der Windows-Plattform ersetzt werden. Software, welche im Rahmen der .NET-Umgebung erstellt wurde, läuft  plattformunabhängig auf internetfähigen Geräten, indem der Code mehr als bisher abstrahiert wird und unabhängiger von der verwendeten Sprache gehalten wird. 

.NET-Sprachen und Common Intermediate Language
Dies wird erreicht, indem die Common Language Runtime sprachübergreifend funktioniert, da  angepasste Programmiersprachen wie C#, C++.NET oder Visual Basic.NET zuerst in einen Zwischencode, der Common Intermediate Language (CIL), ehemals Microsoft Intermediate Language (MSIL) und dann erst zur Laufzeit von einem Echtzeitcompiler  (Just-in-Time Compiler) in lauffähigen Sourcecode umgewandelt wird. 

Managed-Code
Programme die innerhalb der CLR laufen werden als "managed" bezeichnet, alle anderen als "unmanaged". Die Interop-Technik ermöglicht es, alte COM-Programme mit .NET-Hüllen zu  versehen und sie wie .NET-Klassen aufzurufen oder vice versa: .NET-Klassen als COM-Klassen aufrufen. Implementiert sind gleich 3 Konzepte: Web-Services, .NET Remoting Services und die .NET Enterprise Services.                               
Siehe auch:    Dot-NET-Framework-3-0   CLR   WinFX   JIT-Compiler   C-Plus-Plus-CLI   Managed-C-Plus-Plus   Windows-Communication-Foundation   Component-Object-Model   ASP-Dot-NET   Mono