Open Source im professionellen Einsatz
Linux-Magazin 10/2005

Die freien Dotnet-Implementierungen Mono und DotGNU im Vergleich

Überall Punkte

Microsofts Dotnet-Plattform steht Linux-Programmierern über die Projekte Mono und DotGNU zur Verfügung. Der Artikel untersucht, wie weit sich die alternativen Implementierungen für Projekte in der Praxis eignen. Im Mittelpunkt steht die Programmierung grafischer Benutzeroberflächen.

370

Microsoft hat im Jahr 2002 mit Dotnet einen neuartigen Ansatz zur plattformunabhängigen Programmierung vorgestellt. Das Projekt soll die Entwicklung von Netzwerk- und Internet-Anwendungen vereinfachen. Es unterstützt objektorientierte Programmierung und wird mit einer einzigen Klassenbibliothek geliefert, die von mehreren Programmiersprachen wie zum Beispiel C# und VB-Dotnet nutzbar ist. Die Unterstützung der bisher favorisierten MFC-Bibliothek für Visual C++ hat die Firma im Zuge der Dotnet-Einführung eingestellt. Alle künftigen Microsoft-Produkte werden auf der neuen Technologie basieren.

Freies Dotnet?

Trotz des plattformunabhängigen Ansatzes wird Microsoft wohl nie eine Implementierung für Linux liefern. Dieser Aufgabe haben sich zwei Projekte angenommen: zum einen das von Novell gesponserte Mono-Projekt [1], das Linux-Magazin hat es in [2] bereits vorgestellt, zum anderen das Open-Source-Projekt DotGNU [3]. Beide Pakete streben eine möglichst komplette Implementierung der Dotnet-Plattform an, womit ein Software-Austausch über Betriebssystemgrenzen hinweg möglich wäre.

Neben Basisfunktionalitäten wie der String-Manipulation benötigen die meisten Projekte in der Praxis einige Elemente für grafische Benutzeroberflächen. Microsoft hat dafür die Bibliothek »System.Windows.Forms« vorgesehen, die GUI-Objekte wie »MainMenu«, »ToolBar«, »Combobox« oder »Button« zur Verfügung stellt. Listing 1 zeigt ein kleines Beispiel für ihre Benutzung.

Zum Vergleich der Implementierungen von Mono und DotGNU dient eine unter Windows geschriebene Applikation. Dieses kurze Beispiel enthält die wichtigsten GUI-Elemente, siehe Abbildung 1. Der Quellcode findet sich auf der Website des Linux-Magazins [4]. Die einzige Funktionalität besteht darin, die Benutzereingaben in einem dafür vorgesehenen Fenster zu protokollieren.

Das Original von Microsoft

Eine Möglichkeit, an das originale Microsoft Dotnet zu gelangen, ist der kostenlose Download der Dotnet-Laufzeitumgebung mit SDK (Software Development Kit). Sie enthält alle Kommandozeilen-Tools, die für die Software-Entwicklung unter Windows notwendig sind, ähnlich wie das Java-SDK. Der Befehl »csc« kompiliert eine Anwendung. Das Ergebnis ist unter Windows direkt ausführbar.

Als kommerzielle Alternative steht die integrierte Entwicklungsumgebung (IDE) Visual Studio Dotnet mit Debugger und Dialog-Editor zur Verfügung (Abbildung 2). Dieses Paket installiert das Dotnet-SDK automatisch mit. Eine hervorragende Alternative zum Visual-Studio-Dotnet-Paket ist die freie Entwicklungsumgebung Sharpdevelop (Abbildung 3, [5]). Dabei handelt sich um eine mächtige IDE, der lediglich ein integrierter Debugger fehlt. Zu den Features gehören beispielsweise die Möglichkeit, zwischen Microsoft- und Mono-Laufzeitumgebung umzuschalten sowie der Import von Visual-Studio-Dotnet-Projekten.

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Mono

    Vom ehemaligen Besitzer allein gelassen, vom eigenen Vater adoptiert und mit dem Symbol eines Affen versehen: Mono durchlebt stürmische Zeiten. Wozu das Dotnet für Linux in der Lage ist, beweist eindrucksvoll ein deutscher Datenbankhersteller. In Zukunft wird Mono wohl verstärkt in Jackentaschen verschwinden.

  • Microsoft stellt Skriptsprachen unter Apache-Lizenz

    Microsoft hat heimlich die "Iron"-Implementierungen der Skriptsprachen Python und Ruby unter der Apache-Lizenz freigegeben.

  • Mono 2.8.2 beseitigt Sicherheitsproblem

    Die freie Dotnet-Implementierung Mono sollte wegen einer Sicherheitslücke auf Version 2.8.2 aktualisiert werden.

  • Mono 3.0 ermöglicht asynchrones Programmieren

    Die freie Dotnet-Umsetzung Mono ist in Version 3.0 veröffentlicht worden.

  • Dot-Net Core 2.0 erleichtert Portierungen

    Microsoft hat Dot-Net Core 2.0 veröffentlicht. Das plattformübergreifende Open-Source-Projekt soll in der aktuellen Version vor allem Portierungen von dem alten .Net Framework erleichtern. Die verbesserte Linux-Unterstützung sollte Entwicklern ebenfalls helfen.

comments powered by Disqus

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.