SharpDevelop: .Net-Entwicklung kostenlos
Artikel erschienen in Swiss IT Magazine 2003/17
Inzwischen gibt es neben dem offiziellen MS-Entwicklungstool (Visual Studio .Net) noch den C#-Builder von Borland als Alternative. Beide kosten jedoch richtig viel Geld, sofern man die erstellten Anwendungen kommerziell nutzen möchte. SharpDevelop ist das erste professionelle Entwicklungstool, das nicht nur kostenfrei, sondern auch mit vollständigem Quellcode im Internet erhältlich ist.
SharpDevelop versteht sich nicht als eigenständiger Compiler, sondern nutzt das schon vorhandene .Net Framework. Glücklicherweise stellt die Firma Microsoft sowohl die Runtime-Version als auch das Software-Developer-Kit (SDK) ihrer .Net-Technologie kostenfrei zur Verfügung. Bei XP und Windows 2000 ist es bereits im Betriebssystem integriert. Das jeweils aktuelle Release kann jederzeit vom Microsoft-Server heruntergeladen werden.
Mit diesen Vorbedingungen war schon klar: Es würde nicht allzu lange dauern, bis auch die ersten Tools zum SDK verfügbar sein würden. Andere kostenfrei verfügbare Sprachen wie PHP haben es vorgemacht. Das Entwickeln mit dem Texteditor allein ist zwar möglich, aber eine Entwicklungsumgebung (IDE) ist da schon praktischer. Die Entwickler von SharpDevelop haben dabei grösseren Wert auf Komfort gelegt, so dass beispielsweise auch die beliebte IntelliSense-Technik im Editor vorhanden ist.
Die Software kann von der Web-Site heruntergeladen werden. Hier findet sich auch der Link zum Microsoft .Net SDK 1.1. Zumindest die .Net Runtime wird für den Betrieb von SharpDevelop benötigt. Damit ist theoretisch die Entwicklung von .Net-Applikationen auch unter Windows 98 möglich.
SharpDevelop kommt derzeit mit einer Versionsnummer 0.96 und einem Release-Datum vom 23.8.2003. Wie bei vielen Open-Source-Projekten sind auch diese Nullversionen schon zum produktiven Arbeiten geeignet, auch wenn die Entwickler das Produkt immer noch als Beta deklarieren. Vorteilhaft ist die schnelle Folge von Updates, die eine schnelle Beseitigung der wichtigsten Bugs erhoffen lässt. SharpDevelop selbst wurde übrigens komplett in der Sprache C# geschrieben.
Das Projekt existiert schon seit November 2000, Version 0.96 ist immerhin schon das vierte Beta-Release. Workarounds für noch bestehende Probleme lassen sich meist über das angebotene Userforum lösen. Hier können auch neu gefundene Bugs eingetragen werden, und der Einsteiger erhält schnelle und unkomplizierte Hilfe bei der Installation und sonstigen Problemen. Im Forum findet man auch einen Link zu einem SharpDevelop-Plug-in, mit dem sich VS.Net-Projekte importieren und exportieren lassen.
Den Betastatus sieht man dem Programm zunächst nicht an, dennoch kann es bei komplexeren Anwendungen schon mal zu Abstürzen der Entwicklungsumgebung kommen. Für die potentielle Zielgruppe von Einsteigern wie auch ambitionierten Open-Source-Entwicklern ist das Tool jedoch durchaus zu empfehlen.
Der Einsteiger findet sich dank des Forms-Designers schnell zurecht. Kleine interaktive Anwendungen mit Standard-Formularelementen sind schnell geschrieben. Durch IntelliSense werden mögliche Eigenschaften und Methoden mit der zugehörigen Deklaration angezeigt. Auch die Parameterliste erscheint sofort, wenn die runde Klammer geöffnet wird. Hier kann ausserdem aus mehreren möglichen Parameterlisten ausgewählt werden.
Der Editor kann mit vielen praktischen Kleinigkeiten aufwarten. So ist beispielsweise ein Wortzähler integriert, mit dem sich die Anzahl der Zeichen, Wörter und Codezeilen in den einzelnen Dateien des Projekts ermitteln lassen. Noch praktischer ist die Funktion, Tabs in Leerzeichen umzuwandeln und umgekehrt.
Auch die Dokumentation lässt sich mit dem Tool vereinfachen. Auf Knopfdruck (Projekt - HTML-Export) kann das ganze Projekt als HTML exportiert werden. Man erhält dann im angegebenen Verzeichnis eine Reihe von HTML-Dateien mit Syntax-Highlighting in sauberem CSS-Stil.
Was den Einsteiger weniger begeistern wird, ist die fehlende Hilfefunktion. Wer den Komfort der F1-Taste von anderen Produkten gewohnt ist, wird diesen hier schmerzlich vermissen. Wer also mit den vielen einzelnen .Net-Klassen noch unsicher ist, muss die SDK-Dokumentation von Microsoft wohl parallel im zweiten Fenster offen halten.
Weiterhin stört noch, dass der Forms-Designer nur für C# verfügbar ist. Projekte in VB.Net können zwar erstellt werden, die Forms müssen jedoch entweder manuell oder über den Umweg der XML-Form erzeugt werden. Nützlicher ist da schon der "C# nach VB.Net Konverter", der in Version 0.96 neu hinzugekommen ist. Dabei können C#-Quellcodes per Mausklick in VB-Code umgewandelt werden. Bis der VB-Forms-Designer letztendlich im Produkt integriert ist, lassen sich über Umwege also auch VB-Projekte erstellen und bearbeiten, wenn auch etwas umständlich.
Damit eignet sich das Produkt durchaus für den Einsteiger, der zunächst nicht viel Geld ausgeben und trotzdem schon kleine kommerzielle Anwendungen in der .Net-Technologie erstellen möchte.
Wer schon tiefer in .Net steckt, wird vielleicht selbst an dem Projekt mitarbeiten oder den einen und anderen Bug eigenständig beheben wollen. Zu diesem Zweck ist der komplette Quellcode von SharpDevelop ebenfalls auf der Downloadseite verfügbar.
C#-Builder
Positiv: Integration mit Corba und J2EE (Enterprise Edition); Modelling-Werkzeuge (Architect Edition); extrem preiswerte Personal Edition
Negativ: keine Tools für Datenbank- und XML- Editing; kein Support für das .Net Compact Framework
SharpDevelop
Positiv: kostenlos; im Quellcode verfügbar; C# nach VB.Net-Konverter; erweiterbar mit eigenen Plug-ins; IntelliSense-Technik
Negativ: teilweise noch etwas instabil; kein Forms-Designer für VB.Net; keine eingebaute Hilfefunktion
VS.Net
Positiv: parallele Nutzung von .Net Framework 1.0 und 1.1; intelligente Hilfen in den Code-Editoren
Negativ: Dotfuscator nur in einer Light-Variante integriert; Compact-Framework nur für Microsoft-Plattformen verfügbar