Zum Inhalt springen

KDevelop

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 16. Februar 2026 um 22:21 Uhr durch imported>BrunoBoehmler (Weblinks aktualisiert und präzisiert, GROßSCHREIBUNG vermieden, Durchkoppelungen, Abkürzung vermieden, Vorlagenfehler/Vorlage:Cite web korrigiert, doppelten Wikilink entfernt, Zeichensetzung, Kleinkram).
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
KDevelop

colspan="2" class="notheme" style="text-align:center; background:#Vorlage:Standardfarbe; color:#202122;" | Logo von KDevelop
Screenshot
KDevelop 4 (englisch)
Basisdaten

Maintainer Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Entwickler KDE
Erscheinungsjahr Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Aktuelle Version Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Aktuelle Vorabversion Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Betriebssystem Linux/Unix-Derivate, macOS, Windows
Programmier­sprache C++ (Qt)
Kategorie Integrierte Entwicklungsumgebung
Lizenz GPL (Freie Software)
deutschsprachig ja
www.kdevelop.org

KDevelop ist eine freie grafische Entwicklungsumgebung für Unix-basierte Betriebssysteme und Windows. Der Fokus liegt auf der Unterstützung von C++ als Programmiersprache, einige weitere Sprachen werden aber durch Zusatzmodule („Plugins“) ebenfalls unterstützt.

Geschichte

Das KDevelop-Projekt wurde 1998 am Institut für Informatik an der Universität Potsdam begonnen, um eine einfach zu bedienende integrierte Entwicklungsumgebung für C++ und C auf Unix-basierten Betriebssystemen bereitzustellen. Seit damals ist die KDevelop-IDE öffentlich unter der GPL erhältlich und unterstützt unter anderem Qt-, KDE-, Gnome-, C++- und C-Projekte.<ref>Vorlage:Cite book/NameVorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Announce: kdevelop-0.1.tar.gz.] In: KDE-Announce. Mailing list ARChives (MARC), , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 16. Februar 2026 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref>

Ab der Version 3.4 beschränkte sich KDevelop auf eine neue grafische Oberfläche namens Simple-IDEAl, konnte freie und kommerzielle Module (Plugins) einbinden und beherrschte viele neue Programmiersprachen.

Die komplett überarbeitete 4.x-Entwicklungslinie setzt auf KDE Platform 4 auf.

Die 5.x-Entwicklungslinie verwendet KDE Frameworks und Qt 5 und ist eine kontinuierliche Weiterentwicklung von KDevelop 4.<ref>Mirko Lindner: KDevelop 5: Erste Beta vorgestellt. In: News › Software & Apps. PC•Welt, 27. Oktober 2015. Auf PCwelt.de, abgerufen am 16. Februar 2026.</ref>

Nennenswerte Funktionen

Für unterstützte Sprachen besitzt KDevelop die Fähigkeit, den vom Benutzer geschriebenen Code in (nahezu) Echtzeit im Hintergrund zu analysieren. Mit den so gesammelten Informationen wird dann eine Vielzahl von Funktionen angeboten, darunter zum Beispiel:

  • Markierung von Fehlern syntaktischer und semantischer Natur (zum Beispiel fehlende Klammern, aber auch die Verwendung nicht definierter Variablen)
  • Schnellöffner-Funktion, welche in Echtzeit im gesamten Projekt nach Klassen, Dateien und Funktionen sucht und diese auf Wunsch öffnet
  • intelligente Code-Hervorhebung, welche die Struktur des Programms widerspiegelt (zum Beispiel verschiedene Farben für verschiedene Variablen)
  • kontextabhängige intelligente Code-Vervollständigung.

Weitere nennenswerte Funktionen, die nicht direkt zur Sprachunterstützung gehören, sind zum Beispiel:

Funktionsweise und technische Details

Für die unterstützen Sprachen wird beim Laden eines Projekts, oder sobald der Benutzer im Editor-Fenster eine Änderung durchführt, der Code in den betroffenen Dateien (neu) analysiert. Dabei wird eine abstrakte Repräsentation des Programmcodes (genannt definition-use-chain, oder kurz DUChain) erzeugt, welche zum Beispiel Informationen darüber enthält, wo Variablen und Funktionen deklariert werden und welche Typen diese besitzen. Viele der sprachbezogenen Funktionen (zum Beispiel Code-Hervorhebung, Schnellöffner, Liste von Klassen und Funktionen, …) werden von der IDE mithilfe dieser Informationen zur Verfügung gestellt; oft völlig ohne zusätzlichen Code im Plugin für die betreffende Sprache. Für andere Funktionen, deren Verallgemeinerung nicht in diesem Umfang möglich ist – wie zum Beispiel Code-Vervollständigung und Vorschläge (tool tips) – steht eine umfassende Programmierschnittstelle (API) zur Verfügung, welche das Einbinden neuer Sprachen erleichtert.

Texteditor

KDevelop implementiert keinen eigenen Texteditor, sondern benutzt KatePart durch das KParts-Framework.<ref>Dominik Haumann: Kate on 5: The Future of KTextEditor and Kate Part. 11. November 2013. Auf Kate-Editor.org, abgerufen am 16. Februar 2026 (englisch).</ref> Die in KatePart selbst, oder als Plugins für KatePart implementierten Funktionen, zum Beispiel der vi-Eingabemodus stehen somit auch in KDevelop zur Verfügung.

KDevelop und KDevPlatform

KDevelop ab Version 4 basiert auf KDevPlatform, welches umfangreiche Programmierschnittstellen, zum Beispiel zur statischen Codeanalyse, zur Einbindung von Versionskontrollsystemen, oder zum Einbinden grafischer Debugger zur Verfügung stellt. KDevPlatform wird von denselben Entwicklern verwaltet wie KDevelop; die Trennung dient der besseren Wiederverwendbarkeit. KDevelop selbst ist im Wesentlichen eine Sammlung von Plugins für KDevPlatform. Die Entwicklungsumgebung KDevelop wird dementsprechend für die Verwendung vieler Plugins nicht zwingend benötigt. Es ist also möglich, eine andere auf KDevPlatform basierende Anwendung zu erstellen, welche dann dieselben Plugins benutzt, um zum Beispiel Integration von Versionskontrolle oder Code-Hervorhebung anzubieten. Eine solche Anwendung war die für Web-Entwicklung optimierte IDE Quanta, deren Entwicklung aber Ende 2012 eingestellt wurde.<ref>Vorlage:Cite book/NameVorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Quanta update.] In: Niko’s Blog. Niko Sams Blogspot, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 16. Februar 2026 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref>

Unterstützte Sprachen

Sprachunterstützung für C++, CMake und JavaScript/QML ist fester Bestandteil von KDevelop 4 und 5. Unterstützung für PHP<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig kdev-php.git – PHP Language Plugin for KDevelop/Quanta.] In: cgit.kde.org. , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 16. Februar 2026 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> und Python<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig kdev-python.git – KDevelop plugin which provides Python language support.] In: cgit.kde.org. , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 16. Februar 2026 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> ist in Form zusätzlicher Plugins verfügbar. An der Unterstützung weiterer Sprachen, zum Beispiel Ruby und Go, wird gearbeitet.<ref>Jean-Philippe Lang: KDevelop and KDevPlatform plugins – Overview. KDE Projects, 2011, archiviert vom Vorlage:IconExternal am 31. Mai 2013; abgerufen am 16. Februar 2026 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> Für alle anderen Sprachen stehen lediglich die Grundfunktionen, wie einfache Syntax-Hervorhebung und textbasierte Code-Vervollständigung, zur Verfügung.<ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Funktionen der Anwendung.] In: About Kate – Funktionen. Kate-Editor.org, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 16. Februar 2026.Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref><ref>Vorlage:Cite book/Name: [Internetquelle: archiv-url ungültig Working with Syntax Highlighting.] In: Applications › Kate. docs.kde.org, , archiviert vom Vorlage:IconExternal (nicht mehr online verfügbar) am Vorlage:Cite book/URL; abgerufen am 16. Februar 2026 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> Für das Entwickeln von C++-Projekten, die die Bibliothek Qt verwenden, sind einige zusätzliche Funktionen vorhanden, zum Beispiel Unterstützung für das von Qt genutzte Signal-Slot-Konzept.

KDevelop 3 unterstützte die Sprachen Ada, Bash, C, C#, C++, D, Fortran, Haskell, Java, Objective-C, Pascal, Perl, PHP, Python, Ruby, SQL und XUL.

Literatur

  • Robert Gruber, Jonas Jacobi: KDevelop – Einführung in die Entwicklungsumgebung. Open Source Press, München März 2007, ISBN 3-937514-31-7.
  • Ronny Kissing: KDE-Entwicklung mit KDevelop. 2., aktualisierte und erweiterte Auflage. Bomots Verlag, Saarbrücken 2008, ISBN 978-3-939316-50-3.

Weblinks

Commons: KDevelop – Sammlung von Bildern, Videos und Audiodateien
  • KDevelop – offizielle Projektsite (deutsch, englisch)

Einzelnachweise

<references />