AA_helmet_anbra33_826964.jpg

© Anorak33, sxc.hu

Richtig gerüstet

Das richtige Handwerkszeug für Programmierprojekte

Wer sich mit dem Programmieren beschäftigt, sieht sich rasch mit einer Vielzahl von Tools konfrontiert. Wir helfen bei der Auswahl der richtigen Werkzeuge.

Zum Programmieren braucht es nicht viel: Ein schlichter Texteditor reicht aus, und schon geht es los. Erreicht Programm aber eine bestimmte Größe oder entwickeln plötzlich drei Leute an der Software, wird die Sache schnell unübersichtlich. Hier helfen zahlreiche Tools bei der Koordination und Kommunikation. Aber auch Ein-Mann-Projekte brauchen nicht auf nützliche Hilfsmittel zu verzichten: Ein Linux-System wie Ubuntu bietet Werkzeuge für alle Fälle, die Sie – wenn nicht anders beschrieben – über den Paketmanager installieren.

Ausgezeichnet

Viele Editoren unter Linux verfügen über ein Feature, das sich Syntax Highlighting nennt: Über eine Steuerdatei erkennt das Programm die Struktur von vielen Skript- und Programmiersprachen, aber auch von HTML, CSS oder XML-Formaten, und färbt in diesen bestimmte Bestandteile ein. Damit gewinnen Sie auf einen Schlag mehr Übersicht. Zudem empfiehlt es sich, die eingetippten Codezeilen zu nummerieren. Die Zeilennummern tauchen dabei nur in der Darstellung auf, nicht im Programmcode selbst. So legen Sie beim Gespräch über den Sourcecode schnell den Finger auf die passende Stelle im Code.

Sowohl Gnomes Editor Gedit, als auch dessen KDE-Pendant Kwrite, verfügen bereits über eine Reihe von Features, die Ihnen beim Schreiben einfacher Skripte und Programme helfen (Abbildung 1). Diese fallen allerdings sehr rudimentär aus. Im Falle von Gedit rüsten Sie bei Bedarf zahlreiche zusätzliche Plugins nach [1], die den Editor um Features wie Autovervollständigung, Bazaar-Anbindung und Text- bzw. Codehervorhebung zu nutzen.

Abbildung 1

Abbildung 1: Der Editor Kwrite bietet mit Syntax Highlighting, Zeilennummern und Code Folding schon einige Funktionen, die das Programmieren erleichtern.

Kwrite bietet die Komponente KatePart als Texteditor an. Das Modul verfügt über umfangreiche Funktionen, die Sie beim Programmieren unterstützen, wozu u. a. Codevervollständigung, automatisches Einrücken, Syntax Highlighting und sowie das automatische Ergänzen von Klammern gehören.

Etwa auf der gleichen Flughöhe arbeitet das GTK-Programm Geany. Es verbindet die Funktionen eines Editors mit den grundlegenden Features einer echten Entwicklungsumgebung. So beherrscht das Programm beispielsweise Code Folding, also das Einklappen von Textteilen, die Funktionen oder andere gekapselte Sprachelemente enthalten. Das integrierte Syntax Highlighting unterstützt zahlreiche Sprachen. Über eine Snippet-Verwaltung fügen Sie häufig benutzte Codeteile über einen Mausklick ein, und die Vervollständigen-Funktion schließt unter anderem automatisch XML- oder HTML-Tags.

Etwas außerhalb dieser Konkurrenz laufen die Editoren Emacs [2] und Vim [3]. Sie arbeiten als Konsolenprogramme und bieten daher nicht auf Anhieb den gleichen Komfort wie grafische Oberflächen. Allerdings verfügen beide über zahlreiche Features, die das Schreiben von Programmcode vereinfachen. Zudem weisen sowohl Emacs als auch Vim eine Plugin-Schnittstelle auf, die es erlaubt, neue Funktionen hinzuzufügen. Die umfangreiche Dokumentation auf den Projektseiten liefert eine Menge Hinweise zur individuellen Konfiguration der beiden Urgesteine unter den Editoren.

Noch eine Nummer größer fallen integrierte Entwicklungsumgebungen aus, die sogenannten IDEs. Zu den Platzhirschen gehören Kdevelop für KDE-Anwendungen sowie Anjuta, die in der Gnome-Entwicklung zum Einsatz kommt. Zum Designen von Gnomes grafischen Oberflächen ziehen Programmierer zudem gern das RAD-Werkzeug Glade heran (Abbildung 2), wobei RAD hier für Rapid Application Development steht, also das zügige Entwickeln von Programmen. Nicht zuletzt steht unter Linux mit Eclipse ein umfassendes Framework bereit, über die Sie die für Ihr Projekt wichtigen Bestandteile einer Entwicklungsumgebung individuell zusammenstellen.

Abbildung 2

Abbildung 2: Mit Glade entwerfen Sie recht flott grafische Oberflächen für Gnome-Programme.

Dokumentation

Zu einem guten Programm gehört auch eine vernünftige Dokumentation, denn sie hilft dem Leser, die Funktionen richtig zu verstehen und einzusetzen. Wer sich noch nicht an das in Open-Source-Projekten traditionell sehr verbreitete Docbook-Format heran traut, dem bietet sich als Alternative zum Beispiel Restructured Text aus dem Python-basierten Docutils-Projekt an.

Hier schreiben Sie mit einer Wiki-ähnlichen Syntax alle wichtigen Informationen in ein einfaches Textdokument. Als Exportformate unterstützt der Parser derzeit XHTML, XML oder LaTeX, wobei letzteres zum Beispiel sehr leicht das Umwandeln in das PDF-Format erlaubt. Scheuen Sie nicht davor zurück, einige Zeit auf das Schreiben der Dokumentation zu verwenden: Anwender, die nicht verstehen, wie eine Software funktioniert, schauen sich schnell nach Alternativen um.

Einem Freund empfehlen