schweizer messer
Entwicklungsumgebungen im Vergleich
Kdevelop 2.0.2
Beim Versuch das RPM-Archiv von KDevelop auf unserem Testrechner mit SuSE-Linux einzuspielen, erlebten wir unser blaues Wunder: Satte 20 nicht installierte Pakete bemängelte unser Paketmanager. Die meisten Archive bezogen sich dabei auf das Dokumentationssystem Docbook, mit dessen Hilfe KDevelop sämtliche Dokumentationsaufgaben ausführt. Weigert man sich die Pakete zu installieren, so erdreistet sich die Entwicklungsumgebung bei seinem ersten Start vollautomatisch Yast2 und damit das Einspielen der fehlenden Pakete selbst vorzunehmen. Wehe dem, der hierbei als Root eingeloggt ist: Ein Warnhinweis oder Bestätigung durch den Benutzers existiert schlichtweg nicht. Bei eingelegter Installations-CD ist so ein paar Sekunden später, die Festplatte um einige MB ärmer. Der bei der Installation entstandene Eindruck bestätigt sich direkt nach dem Start: KDevelop vereint eine große Anzahl externer Programme unter einer Oberfläche. In den Menüs tauchen immer wieder alt bekannte, externe Programme auf. So wird für den grafischen Entwurf der Dialogfenster der Qt-Designer gestartet. Eine Software, die direkt aus der Feder von Trolltech, dem Hersteller von Qt, stammt. Die Oberfläche selbst erinnert im Gegensatz zu Anjuta weitaus stärker an die Vorbilder aus dem Windows-Lager, wirkt aber etwas überladen und chaotisch. Das standardmäßig dreigeteilte Hauptfenster enthält am linken Rand eine Ansicht, die je nach dort aktiviertem Registerblatt, verschiedene Sichtweisen auf das aktuelle Projekt erlaubt. Dort erreicht man ebenfalls die sehr ausführliche Hilfe, die sogar mit einer kompletten Sprachreferenz für C++ aufwartet.
Für die Dokumentation der Qt- und KDE-Klassen wird jedoch auf externe Quellen zurückgegriffen. Auf der rechten Seite befindet sich ein Editor-Fenster, das neben der Bearbeitung des Quellcodes auch die Anzeige von anderen Dokumenten, wie den Hilfedateien übernimmt. Wie so viele andere Elemente der Oberfläche, kann das Verhalten dieses Fensters frei konfiguriert werden. Am unteren Bildschirmrand befindet sich ein Statusfenster. Dort lassen sich über verschiedene Registerblätter unterschiedliche Meldungstypen begutachten. Insgesamt schreibt KDevelop Integration groß. Dies ist kein Zufall <\#208> schließlich entstammt die Entwicklungsumgebung dem KDE-Projekt, dessen KDE-Desktop das selbe Ziel verfolgt. Die Einrichtung eines neuen Projektes übernimmt der Anwendungsassistent.
Hier erkennt man wieder, das die Wurzeln von KDevelop im KDE-Projekt liegen. Neben vielen KDE- und Qt-Programmvarianten, bietet die Entwicklungsumgebung leider nur einen Anwendungstyp, der auf den konkurrierenden GNOME-Bibliotheken basiert. Im Gegensatz zu Anjuta ist KDevelop somit ein idealer Kandidat, wenn es um die Erstellung von KDE- oder Qt basierten C bzw. C++ Programmen geht. Weitere Sprachdialekte beherrscht KDevelop übrigens nicht. Erfreulicherweise bietet der Assistent vielfältige Möglichkeiten bei der Grundeinstellung, wie die Konfiguration des Versionsmangement-Tools CVS. Hierdurch wird die reibungslose, gleichzeitige Arbeit mehrerer Personen an ein und demselben Projekt ermöglicht. KDevelop ist neben Kylix das einzige hier vorgestellte Programm, das auf diese Weise Teamarbeit an einem Projekt ermöglicht. Über die reinen Quelldateien hinaus erstellt der Assistent auf Wunsch sogar die zum Programm gehörige Dokumentation. Dies gilt für eine Funktions- und Klassendokumentation des eigenen Quellcodes und für das Benutzerhandbuch. Für letzteres ist allerdings etwas Kenntnis über das eigens zu diesem Zweck von KDevelop verwendete Dokumentationssystem notwendig. Die eingangs erwähnten Pakete vorausgesetzt, lässt sich so das gesamte Software-Projekt innerhalb einer Oberfläche erstellen und verwalten. Ebenso wie Anjuta, knausert KDevelop standardmäßig nicht mit der Anzahl der neu angelegten Dateien. Dafür bleibt mit den verschiedenen Baumansichten auf das Projekt im linken Fensterabschnitt stets die Übersicht gewahrt.
Sehr gut gelungen ist der hier ebenfalls integrierte Klassenbrowser. Dort lassen sich alle im Projekt verwendeten Klassen mitsamt ihren Attributen und Methoden komfortabel einsehen und manipulieren. Ein Assistent übernimmt sogar die Erstellung neuer Klassen, indem er den Code-Rahmen und die zugehörigen Dateien generiert. Anschließend können Methoden und Attribute über ein entsprechendes Dialogfenster hinzugefügt oder gelöscht werden. Die rechte Maustaste entpuppte sich in diesem Zusammenhang als wahrer Tausendsassa. In den Code per Hand eingefügte Methoden oder Attribute werden nach einem Übersetzungsvorgang automatisch in die angesprochenen Ansichten übernommen. Ebenfalls sehr hilfreich ist die grafische Klassenansicht. Hierbei handelt es sich um ein Fenster, in dem die Klassenhierarchien übersichtlich in Form einer Grafik dargestellt werden.
Wünschenswert wäre allerdings die Darstellung in der weit verbreiteten UML-Notation. Insgesamt weist KDevelop viele nützliche Detailfunktionen auf, die sich allerdings erst auf den zweiten Blick dem Benutzer erschließen. Etwas gewöhnungsbedürftig ist die Umleitung der Konsolenmeldungen in verschiedene Register des Statusfensters. So wurde die Ausgabe unseres Testprogramms gleich in mehrere Register umgeleitet. Dieses Vorgehen hat jedoch den Vorteil, dass die Meldungen übersichtlich und nach Typ sortiert ausgegeben werden. Der Text-Editor kommt zwar nicht an den Komfort von Anjuta heran, ein reibungsloses Arbeiten ist aber uneingeschränkt gewährleistet.
KDE Studio Gold Version 3.0
Die Software KDE Studio wurde von der Firma theKompany [2] entwickelt und liegt in zwei Versionen vor. KDE Studio ist die freie, unter der GPL veröffentlichte Open-Source-Variante des kommerziellen KDE Studio Gold. Die Unterschiede zwischen beiden Versionen liegt im Funktionsumfang.
Darüber hinaus wird ab sofort nur noch die kommerzielle Variante von theKompany weiterentwickelt und unterstützt. Im Folgenden verwenden wir die Testversion des KDE Studio Gold, die kostenlos von der Homepage des Herstellers [2] herunter geladen werden kann. Sie bietet den vollen Funktionsumfang und ist nur in ihrer zeitlichen Nutzungsdauer auf 15 Minuten begrenzt. Die Vollversion ist für rund 25 US-Dollar erhältlich.
Direkt nach dem Start wird man von einem Assistenten begrüßt, der unteranderem die Erstellung eines neuen Workspace ermöglicht.
Diese Bezeichnung für Projekte weicht in KDE Studio von denen der anderen Programme ab. So entspricht ein Workspace (Arbeitsumgebung) in anderen Entwicklungsumgebungen einem Projekt. KDE Studio verwendet die Bezeichnung Projekt für eine weitere Untergruppierung des Workspace. Dort kann ein Projekt eine Bibliothek oder ein zu erstellendes Programm sein. Bei der Einrichtung eines neuen Projektes wird schnell deutlich, dass auch KDE Studio sein Hauptaugenmerk auf die C- und C++ Entwicklung auf Basis von Qt und KDE legt. Eine Möglichkeit GNOME-Anwendungen zu erstellen bietet die IDE erst gar nicht an. Es bleibt aber die Erstellung im Rahmen eines Custom-Projektes per Hand. Bei der Generierung eines kleinen Terminal-Programms legt KDE Studio im Gegensatz zu seiner Konkurrenz gerade einmal die notwendigsten Skripte und Dateien an. Etwas zu sparsam vielleicht: Die Quellcode-Datei mit der stets benötigten main()-Funktion muss selbst angelegt werden. Lediglich Vorlagen für ein KDE- und Qt-Programm existieren. Die Oberfläche des Hauptfensters ähnelt der von KDevelop, wirkt aber etwas aufgeräumter.
KDE Studio bietet in seinem linken oberen Fenster eine Baumdarstellung des Projektes. Hilfedateien lassen sich dort nicht anzeigen. Im unteren Teil befindet sich ein Statusfenster und im rechten oberen Abschnitt erfolgt die Bearbeitung der Quelldateien. Über Register kann man zwischen verschiedenen, gleichzeitig geöffneten Dateien hin- und herspringen. Der Editor selbst bietet Standardkost und verfügt wie Anjuta über die Möglichkeit, Funktionen und Klassen selektiv aus- und einzublenden. Den Funktionsumfang von KDevelop erreicht KDE Studio nicht. So existiert zwar ein Klassenbrowser (hier als Klassenexplorer bezeichnet) und eine grafische Ansicht, diese müssen aber explizit aus dem Menü aufgerufen werden. Des weiteren wirken sie aufgesetzt und unübersichtlich.
Hilfsmechanismen für die Erstellung von Klassen, wie diese in KDevelop integriert sind, fehlen vollständig. Ebenso glänzte in unserer Demoversion die komplette Dokumentation durch ihre Abwesenheit. Und dies obwohl theKompany mit einer vollständigen und guten Dokumentation für den Kauf des KDE Studios wirbt. Weitere interessante Funktionen waren neben den obligatorischen Debug- und Compiler-Optionen in KDE Studio Gold 3.0 nicht auszumachen.



