A.6. Software-Entwicklung

Dieser Abschnitt bietet eine Einführung in Linux-IDEs, Toolkits, Entwicklungswerkzeuge und Versionsverwaltungssysteme für professionelle Software-Entwicklung.

Tabelle A.6. Entwicklungs-Software für Windows und Linux

Aufgabe

Windows-Anwendung

Linux-Anwendung

Integrierte Entwicklungsumgebungen

Borland C++, Delphi, Visual Studio, .NET

KDevelop, Eric, Eclipse, MonoDevelop, Anjuta

Toolkits

MFC, Qt, GTK

Qt, GTK

Compiler

VisualStudio

GCC

Fehlersuchwerkzeuge

Visual Studio

GDB, valgrind

GUI Design

Visual Basic, Visual C++

Glade, Qt Designer

Versionsverwaltungssysteme

Clearcase, Perforce, SourceSafe

CVS, Subversion

KDevelop

KDevelop ermöglicht das Schreiben von Programmen für verschiedene Sprachen (C/C++, Python, Perl, etc.). Es beinhaltet einen Dokumentations-Browser, einen Quellcode-Editor mit Syntaxhervorhebung, eine GUI für den Compiler und vieles andere mehr. Weitere Informationen finden Sie unter http://www.kdevelop.org.

Eclipse

Die Eclipse-Plattform wurde zur Erstellung integrierter Entwicklungsumgebungen entworfen, die mit benutzerdefinierten Plugins erweitert werden können. Die Grundversion enthält außerdem eine voll funktionsfähige Java-Entwicklungsumgebung. Weitere Informationen finden Sie unter http://www.eclipse.org.

MonoDevelop

Das Mono-Projekt ist eine offene Entwicklungsinitiative, die an der Entwicklung einer Open Source- Unix-Version der .NET-Entwicklungsplattform arbeitet. Sein Ziel ist es, Unix-Entwickler in die Lage zu versetzen, plattformübergreifende .NET-Anwendungen zu erstellen und bereitzustellen. MonoDevelop ergänzt die Mono-Entwicklung um eine IDE. Weitere Informationen zu MonoDevelop finden Sie unter http://www.monodevelop.com/.

Anjuta

Anjuta ist eine IDE fur die GNOME/GTK-Anwendungsentwicklung. Das Programm beinhaltet einen Editor mit automatischer Formatierung sowie mit Codevervollständigung und -hervorhebung. Neben GTK unterstützt es Perl-, Pascal- und Java-Entwicklung. Außerdem ist ein DGB-basiertes Fehlersuchprogramm enthalten. Weitere Informationen zu Anjuta finden Sie unter http://anjuta.sourceforge.net.

Eric

Eric ist eine für Python- und Python-Qt-Entwicklung optimierte IDE. Weitere Informationen zu Eric finden Sie unter http://www.die-offenbachs.de/detlev/eric3.html.

Qt

Qt ist eine Programmbibliothek zur Entwicklung von Anwendungen mit grafischen Benutzeroberflächen. Es ermöglicht die schnelle Entwicklung professioneller Programme. Die Qt-Bibliothek ist nicht nur für Linux verfügbar, sondern für eine Reihe von Unix-Versionen und sogar für Windows und Macintosh. So können Programme geschrieben werden, die sich leicht auf diese Plattformen portieren lassen. Weitere Informationen finden Sie unter http://www.trolltech.com. Die Sprach-Bindings für die Qt-Entwicklung werden unter http://developer.kde.org/language-bindings/ zusammengefasst.

GTK

GTK ist ein Toolkit für mehrere Plattformen, das zum Erstellen von grafischen Benutzeroberflächen dient. Es wird für alle GNOME-Anwendungen, GIMP und mehrere andere Programme verwendet. GTK wurde zur Unterstützung einer Reihe von Sprachen entwickelt, nicht nur von C/C++. Ursprünglich wurde es für GIMP geschrieben, daher der Name „GIMP Toolkit“. Weitere Informationen finden Sie unter http://www.gtk.org. Die Sprach-Bindings für GTK werden unter http://www.gtk.org/bindings.html zusammengefasst.

GCC

GCC ist eine Compiler-Sammlung mit Frontends für verschiedene Programmiersprachen. Eine vollständige Liste der Funktionen sowie umfassende Dokumentation finden Sie unter http://gcc.gnu.org.

GDB

GDB ist ein Fehlersuchwerkzeug für Programme, die in verschiedenen Programmiersprachen geschrieben wurden. Weitere Informationen zu GDB finden Sie unter http://www.gnu.org/software/gdb/gdb.html.

Valgrind

Valgrind ist eine Suite von Programmen für die Fehlersuche und Profilerstellung bei x86-Anwendungen. Weitere Informationen zu Valgrind finden Sie unter http://valgrind.org/info/.

Glade

Glade ist ein Programm zur Erstellung von Benutzeroberflächen für die GTK- und GNOME-Entwicklung. Neben GTK-Unterstützung bietet es auch Unterstützung für C, C++, C#, Perl, Python, Java u. a. Weitere Informationen zu Glade finden Sie unter http://glade.gnome.org/.

Qt Designer

Qt Designer ist ein Programm zur Erstellung von Benutzeroberflächen und Formularen für die Qt- und KDE-Entwicklung. Es kann als Teil der KDevelop-IDE oder als eigenständiges Programm ausgeführt werden. QtDesigner kann unter Windows ausgeführt werden und lässt sich sogar in die Entwicklungs-Suite Visual Studio integrieren. Weitere Informationen zu Qt Designer finden Sie unter http://www.trolltech.com/products/qt/designer.html.

CVS

CVS (Concurrent Versions System) ist eines der wichtigsten Versionsverwaltungssysteme für Open Source. Es ist ein Frontend für Revision Control System (RCS), das in den Standard-Linux-Verteilungen enthalten ist. Weitere Informationen zu CVS finden Sie unter Referenz. Weitere Informationen finden Sie auf der Homepage http://www.cvshome.org/.

Subversion

Subversion dient demselben Zweck wie CVS, weist jedoch einige größere Verbesserungen auf, wie Verschieben, Umbenennen und Beifügen von Meta-Informatioen zu Dateien und Verzeichnissen. Weitere Informationen zu Subversion erhalten Sie unter Referenz oder auf der Homepage http://subversion.tigris.org.