KDE: Frameworks 5 werden einfache Qt-Addons
Das KDE-Team erklärt detailliert seinen Plan zur kommenden Generation der Basisbibliotheken des Projekts. Einige dieser modularen Frameworks können einzeln als Qt-Addon verwendet werden und sollen erstmals im Dezember 2013 in einer Vorschau erscheinen.
Bisher waren die grundlegenden Bibliotheken des KDE-Projekts - die KDELibs - ein einziges Paket ineinander verschachtelter Funktionen. Mit den Frameworks 5 wird dies aufgehoben und die Bibliotheken werden als Module mit klaren Abhängigkeiten zur Verfügung stehen, um einfacher in verschiedenen Qt-Anwendungen genutzt werden zu können.
Schichten
Denn die Module sind so aufgebaut, dass sie als einfache Qt-Addons in ein Projekt integriert werden können, und in verschiedene Schichten kategorisiert, um unnötige Abhängigkeiten nicht mitinstallieren zu müssen. So können die Module der untersten Schicht vollständig eigenständig verwendet werden, da sie keine Abhängigkeiten aufweisen außer die Qt-Bibliotheken selbst.
Zu der untersten Schicht zählt etwa KArchive, das mit häufig verwendeten komprimierten Archiven wie Zip, 7Zip und Tar umgehen kann und darüber hinaus ein QIODevice zur Kompression mit GZip, BZip oder XZ bietet. Darüber hinaus sind die Module auch noch in Kern-, GUI- und Widget-Bestandteile unterteilt, damit Entwickler nur den Code verwenden müssen, den sie wirklich brauchen.
Typen
Neben den Schichten werden die einzelnen Module der Frameworks auch drei verschiedenen Typen zugeordnet: Functional, Integration, Solution. Functional heißt, das Modul hat keine Laufzeitabhängigkeiten, die Laufzeitabhängigkeiten der Integration-Module bieten plattform- oder betriebssystemspezifischen Code und die Abhängigkeiten der Solution-Module müssen zwingend vorhanden sein.
So ist das bereits erwähnte KArchive ein Functional-Modul, KDE Input/Output (KIO) hingegen ist ein Solution-Modul, da es laufende KIO-Slave-Daemons auf dem System voraussetzt, um Nutzern die Möglichkeit zu bieten, über das Netzwerk auf Dateien zuzugreifen, als wären sie lokale Dateien.
Mehr als zwei Jahre Arbeit
Erste Ideen und Konzepte für KDE Frameworks 5 entstanden vor zwei Jahren. Neben der beschriebenen Modularisierung der Bibliotheken arbeitete das Entwicklerteam auch daran, doppelte Funktionen in den KDELibs und dem Qt-Projekt aufzufinden und aus den eigenen Bibliotheken zu entfernen. Ebenso pflegte das KDE-Projekt einige der Funktionen der KDELibs direkt in Qt5 ein, so dass Qt-Entwicklern diese nun zur Verfügung stehen. Ähnliches gilt für Änderungen des KDE-Teams an CMake.
Die erste Vorschauversion auf die Frameworks soll im Dezember 2013 erscheinen, also zeitnah zur Veröffentlichung von Qt 5.2, auf dem die Frameworks basieren werden. Die Module KArchive und KThreadweaver sollen zu dem Zeitpunkt bereits stabil genug für den Einsatz sein.
In der ersten Jahreshälfte 2014 soll dann eine erste stabile Version der Frameworks 5 erscheinen. Darauf aufbauend sollen die komplett in QML umgeschriebenen Plasma-Arbeitsflächen im Sommer 2014 erscheinen. Die Darstellung der Oberflächen soll dabei statt über den X-Server über Wayland erfolgen.
Der Quellcode der Frameworks steht auf den KDE-Servern bereit, Qt-Entwickler erhalten weitere Information über einzelne Module bei Inqlude.org. Zudem bietet das Project Neon die in Entwicklung befindlichen Frameworks als Kubuntu-Pakete an, Pakete für Opensuse stehen ebenfalls bereit.
Vala, ja, quasi Industriestandard, mit tollem Tooling (fangen wir mal bei den...