|Note: This page is about KDE 4. It isn't applicable for KDE 3 development.|
KDE heavily depends on Qt. Many KDE classes inherit from Qt classes. KDE 4 is based on Qt 4, KDE 3 is based on Qt 3. When this tutorial introduces a new Qt class, you're also learning KDE programming.
If you read the above, you will be taken into a world where every line of code is friendly and good to beginners.
This tutorial shows you the magic of an application's most important thing: The main window.
Maybe you want to guide your users through your own menues, then this is right for you.
You always wanted to store configuration options ? Then eat this!
Yes, even XML parsers are explained here.
Need a quick template for your KDE 4 projects ? Here's a cmake project environment.
A QTableWidget is an easy way to present an editable table to the user.
A QTreeWidget is like a QTableWidget with hierarchical display.
With KDirWatch, your application gets notified if a given file changes.
Whenever you have a KDE class and want the API documentation for it (KApplication, for example), point a konqueror window to
Be aware that the kde: konqueror shortcut only works for classes in kdelibs. If you ask for a class outside of kdelibs or a class that the API search software doesn't know about, you'll be redirected to the main API documentation page. You will need to navigate from there to find the class you're looking for.
If you need to look up the Qt API documentation for a class, you can point a Konqueror window to
This can be done in addition to browsing the Qt documentation locally, or using Qt Assistant.
There are two main development mailing lists:
Many other mailing lists for certain applications also existing. Before posting a question, it's always best to make sure you direct it to the right list. Emailing your question to the right list can help you get an answer faster. You can get an overview of the various available mailing lists at http://www.kde.org/mailinglists
If you're looking for something a bit more in the instant gratification department, then feel free to ask your question on IRC. KDE uses the Freenode network and the easiest way to get on IRC is to point your favorite IRC client to irc.kde.org. There are several IRC clients available for KDE such as konversation and ksirc. There are two main channels for KDE development:
Additionally, there are channels for discussing the sub-frameworks of KDE 4:
As with mailing lists, many applications have their own IRC channel. However, there currently is not a list of common IRC channels available. If you need to ask a question about a specific application, check that application's home page to see if there's an IRC channel available specifically for that application. If a channel is not listed, it's best to ask your question on one of the above two general development discussion channels.
In order to get the most out of your IRC experience, it's best to follow these guidelines when asking questions: