home of de.comp.os.unix.linux.*
 
 
 

Tutorials zum KDE Programmieren

von Karl-Heinz Zimmer Version vom 05.06.2003

Es hat sich herumgesprochen, dass die Erstellung von KDE Programmen (z.B. mit KDevelop und dem Qt Designer) nicht nur gut erlernbar ist, sondern auch eine Menge Spass machen kann, daher sagt sich so manche Linuxerin angesichts der von KDE heute gebotenen Möglichkeiten:

Jetzt setze ich mich doch gleich mal hin
und sehe nach, wie wenig Mühe die Erstellung
eines KDE-Progrämmle denn nun tatsächlich macht!

Gesagt, getan, tief Luft geholt, neuestes Release von Qt und KDevelop auf die Platte gehauen und auf geht's!

Die auf kde.org verfügbaren Referenz-Dokumentationen, Programmier-Anleitungen und Kochbücher dürften den meisten von Euch bekannt sein, daher an dieser Stelle nur kurz die wichtigsten Index-URLs, weiterführende Hinweise finden sich jeweils dort:


 

Obwohl schon etwas älter, aber dennoch nützlich zum Verständniss grundlegender Strukturen in KDE, ist dieses, unter massgeblicher Beteiligung mehrerer KDE Core-Entwickler verfasste Werk:

KDE 2 Development

Netterweise stellt der Verlag es online zur Verfügung:

KDE 2 Development
http://kde20development.andamooka.org

Auch der Besitz der Druckausgabe sollte Euch nicht davon abhalten, dort einmal vorbeizuschauen, denn der Inhalt des Buches wird auf begleitenden Webseiten auch heute noch ab und an ergänzt und in verschiedenen Foren von den Lesern kommentiert.


 

Sehr empfehlenswert ist dieses, erst neulich aktualisierte und ausgesprochen hilfreiche

KDE Visual Tutorial von Antonio Larrosa

In dieser Anleitung werden KDevelop und der Qt Designer gemeimsam eingesetzt, um ein simples, aber gut funktionsfähiges Bildbearbeitungsprogramm zu erstellen, das die Manipulation der Farbkanäle und des Alpha-Kanals ermöglicht.

siehe: http://developer.kde.org/~larrosa/visualtutorial.html

Auf dem selben Server verfügbar ist eine überarbeitete Fassung von Antonios erstem Tutorial:

http://developer.kde.org/~larrosa/tutorial/p1.html

Dort wird Schritt für Schritt ein simpler WEB Browser erstellt, den sich dann jede[r] selber nach Lust und Laune ergänzen kann...


 

Denjenigen von Euch, die bisher noch nicht mit KDevelop und dem Qt Designer gearbeitet haben und einen raschen Einblick gewinnen möchten, wie die Programmierung und Definition des User-Interface damit vonstatten gehen, empfehle ich ebenfalls einen Blick auf diese HOWTO-artig aufgebaute

Kurz-Anleitung von Anne-Marie Mahfouf

Das Dokument liegt auf der Website der KDE Women:

Qt Designer and KDevelop for beginners
http://women.kde.org/projects/coding/tut_kdevelop

 

Speziell zu KDEs IO-Struktur (Stichwort KIO-Slave) haben die beiden KDE-Entwickler Carsten Pfeiffer und Stephan Kulow ein verständliches Tutorial in der Zeitschrift ct veröffentlicht, das hier online zu lesen ist:

Allesfresser - KDEs flexible I/O-Architektur
http://www.heise.de/ct/01/05/242/default.shtml

Auch dieses Dokument ist bereits etwas älter, aber immer noch sehr lesenswert.


 

Für KDE 3 und Qt 3 wurde diese Spezial-Anleitung geschrieben:

How to implement "User defined settings" von Andreas Nicolai
http://www.kdevelop.org/doc/tutorial_settings/

Obwohl dieser Text eigentlich für KDevelop-Anwender gedacht ist, kann er auch bei manueller Vorgehensweise nützlich sein, denn der Autor nennt in abgesetzten, blauen Kästen die Besonderheiten, die bei Nicht-Verwendung von KDevelop jeweils zu beachten sind.


 

Bevor Ihr jetzt loslegt und Euch auf die Tasten stürzt, könnte sich ein Blick auf die "Richtlinien zur Programmierung" lohnen:

http://www.kdevelop.org/doc/programming/index-15.html

Es geht hierbei nicht um Gaengelei sondern um ein paar nützliche Regeln, die Dir selber und anderen, die Deinen Code lesen und ggfs. verbessern/ergänzen möchten, das Leben etwas erleichtern...


 

Einige, hilfreiche Programme, auf die mich Stephan Binner hinwies, möchte ich Euch ebenfalls nicht verschweigen:

KDbg - http://members.nextra.at/johsixt/kdbg.html
KDbg ist eine grafische Bedienoberfläche für den GNU Debugger dbg.
 
Cervisia - http://cervisia.sourceforge.net/
Cervisia ist ein fortgeschrittenes KDE-Frontend für den CVS-Client.
 
KDE Studio - http://www.thekompany.com/projects/kdestudio/
Eine weitere IDE. Nur die kommerzielle "Gold"-Version wird weiterentwickelt.

 

Beeindruckte KDevelop- und Designer-Neulinge, die jetzt Nägel mit Köpfen machen, ihre unter Windows so liebevoll entwickelten Shareware- oder Freeware-Programme aber gerne auf die Linux-Reise mitnehmen möchten, finden dazu ein Hilfmittel, das die in einem alten Windows-Programm (*.exe oder *.dll) gespeicherten Ressource-Infos (insbesondere den Inhalt und Aufbau von Dialogboxen) ausliest und in *.xml Dateien umwandelt, die vom Qt Designer unmittelbar eingelesen werden, nämlich den:

K N U T   Ressourcen-Konverter
von Klarälvdalens Datakonsult

Das je nach Art und Umfang der zu portierenden Projekte ausgesprochen hilfreiche Modul (falls Ihr mir, als jemandem, der zu Knut einen bescheidenen Beitrag leisten durfte, ein bischen Prahlerei nachseht) ist als Plug-in zum Qt Designer konzipiert und wird unter ähnlichen Lizenzen wie Qt angeboten, was bedeutet, dass die freie Version kostenlos in Form eines Quellcode-Paketes heruntergeladen werden kann.

Die deutschsprachige Seite zu Knut:

http://www.klaralvdalens-datakonsult.se/?page=products&sub=knut

Die freie Version ist nur für nicht-kommerzielle Zwecke zu verwenden, was auf die Umsetzung von Freeware klar zutrifft und auch bei der Portierung ehemaliger Shareware drin sein kann: dann nämlich, wenn Dir klar wurde, dass eine freie Lizenz (wie z.B. die GPL) auch für Dich, als Entwicklerin, wesentlich spannender ist, als die müde, unter Windows so oft bemühte Shareware-Masche!

Falls Dich meine Behauptung irritiert, sei bitte so nett und lies mein folgendes, kleines Plädoyer...   :-)

<kleines Plädoyer>

Freie Software zu schreiben, bedeutet für die Programm-Autorin/den Programm-Autor eine grosse Chance, die eigenen Kenntnisse im Dialog mit den Nutzern weiter zu vertiefen, sei es durch Patches oder Verbesserungsvorschläge kenntnisreicher Anwenderinnen, die in den Code geschaut haben, sei es, indem sich eine anfangs noch kleine Gruppe begeisterter Mitprogrammierer findet, die helfen, Dein (oder eher 'Euer') Programm noch besser zu machen... Zudem macht es wirklich viel Spass, die Anwender des eigenen Werkes in die Karten schauen zu lassen und mit ihnen auf Basis der Sourcen in einen Dialog zu treten, der sich zunehmend vom altgewohnten Trott "Kunde jammert - Programmierer muss etwas tun!" entfernt.
 
Freie Software ist anders.
  • Hierbei geht es um Respekt der Schaffenden gegenueber den Nutzenden und um Interesse der Anwender am Entwicklungsprozess.
  • Interesse, das die wohlbekannte Frage "Wann ist Feature X fertig?" oft nur noch am Rande betrifft.
  • Interesse, das - statt sie verständnisslos unter Druck zu setzen - die Entwicklung konstruktiv mitdenkend begleitet und zu einem häufig sehr fruchtbaren Dialog fuehrt.
</kleines Plädoyer>
 

Egal, wozu Ihr Euch nun entscheidet, welchem Tutorial Ihr den Vorzug gebt, ob Ihr lieber ganz neu entwickeln oder alte Win-Werke auf KDE portieren wollt - eines halte ich für ziemlich sicher:

Die KDE-Programmierung wird Euch gefallen.  

KDevelop und der Designer als Power-Werkzeuge und das Qt/KDE Gespann als solides Fundament bieten Möglichkeiten ebenso komfortabler wie effizienter Softwareentwicklung, die sich so manche an Delphi oder Visual C++ gewöhnten Ex-Windows'ler unter Linux noch nicht zu erhoffen wagten:

Das Blatt hat sich gewendet!


 

Viel Spass und Erfolg!

K.-H. Zimmer     ---     Föhren (Mosel)     ---     Germany

-- 
Mein Dank gilt allen, die mich durch Kritik, Korrekturen
und Kommentare unterstützt haben - bitte sendet weiterhin
konstruktive Verbesserungsvorschläge, damit dieser kleine
Text zu einer immer brauchbareren Informationsquelle wird.