The KDE Community has announced the first stable release of Frameworks 5. It’s a result of three years of hard work to port KDE Platform 4 to Qt 5 which started back in 2011 at Randa Meeting.
“Frameworks 5 is the next generation of KDE libraries, modularized and optimized for easy integration in Qt applications. The Frameworks offer a wide variety of commonly needed functionality in mature, peer reviewed and well tested libraries with friendly licensing terms,” says the announcement page.
What’s KDE Frameworks?
We have heard of ‘Unity or Gnome or Plasma desktop’. But what is KDE Frameworks and how does it matter to a Plasma desktop user? Why should I be excited about it? Most Plasma users may think they don’t even use the Frameworks, it sounds like something developers should be excited about. So what is Frameworks and how does it affect the Plasma users?
KDE software, which also includes the Plasma desktop, uses a lot of common code base which is formed by KDE Libraries. As Jos Poortvliet explained on Linux.com, “They provide high-level functionality such as toolbars and menus, spell checking and file access.” These libraries were developed over time-frame of 15 years. One problem with these libraries was that it was ‘all or none’ which means you can’t pick and choose the ones a developer needs.
KDE Frameworks 5 is a successor of KDELibs and solves one of the major problems, to a great extent. One of the major improvements is that it has spit the libraries. Now developer can choose whatever they need from the collection of Frameworks thus making it easier for them to ‘use’ the KDE code base and save time and effort.
Jonathan Riddell of Kubuntu puts it very well when he says, “Today you can save yourself the time and effort of repeating work that others have done, relying on over 50 Frameworks with mature, well tested code. For a full list and technical details coders can read the API documentation.” It has notable benefits for QT developers as they can ‘select just what they need from the collection of Frameworks’, as pointed out by Jos.
Coming back to the question ‘why should a Plasma user be excited about it’. The way it directly affects a Plasma user is that their desktop also uses these libraries or the Frameworks. Plasma is one of the many frameworks which provides the foundations that can be used to build a primary user interface, from graphical to logical components. Plasma users are just one of the many beneficiaries of the KDE Frameworks as it benefits everyone using Qt, including Canonical.
The Frameworks announcement clearly mentions, “The KDE Frameworks represent an effort to rework the powerful KDE Platform 4 libraries into a set of independent, cross platform modules that will be readily available to all Qt developers to simplify, accelerate and reduce the cost of Qt development.”
It’s a vender neutral neutral contributor process (anyone can contribute) which is governed by open governance and dictated by flexible licensing such a LGPL (lesser GNU General Public License). The release of KDE Frameworks 5 is a major milestone considering Qt is becoming extremely popular across industries.