KDE Feature Overview
KDE can be viewed either as a user desktop or as a development platform for applications. This page will quickly describe the major features of both.
The K Desktop Environment
KOffice Office Suite
KDE also ships with the highly anticipated release of the KOffice suite. The integrated suite consists of a spreadsheet application (KSpread), a vector drawing application (Karbon), a frame-based word-processing application (KWord), a presentation program (KPresenter), and a chart and diagram application (KChart). Native file formats are XML-based, and work on filters for proprietary binary file formats is progressing. Combined with a powerful scripting language and the ability to embed individuals components within each other using KDE's component technology (KParts), the free KOffice suite provides all the necessary functionality to all but the most demanding power users.
KIO Network Transparency
In addition, KIO's network transparency offers seamless support for accessing or browsing files on GNU/Linux, NFS shares, MS Windows SMB shares, HTTP pages, FTP directories and LDAP directories. The modular, plug-in nature of KDE's file architecture makes it simple to add additional protocols (such as IPX or WebDAV) to KDE, which would then automatically be available to all KDE applications.
KDE's customizability touches every aspect of this next-generation desktop. KDE's sophisticated theme support starts with Qt's style engine, which permits developers and artists to create their own widget designs. KDE ships with over 14 of these styles, some of which emulate the look of various operating systems. Other configuration options permit users to: choose among icon themes and system sounds (using a simple drop-and-replace approach); configure key bindings; select from over 50 languages; customize toolbar layouts and entries and menu composition; employ single-click or double-click to activate desktop items; navigate the desktop using a keyboard instead of a mouse; and much, much more. Moreover, KDE fully supports Unicode and KHTML is the only free HTML rendering engine on GNU/Linux/X11 that features nascent support for BiDi scripts such as Arabic and Hebrew.
Besides the exceptional compliance with Internet and file-sharing standards mentioned above, KDE achieves exceptional compliance with the available GNU/Linux desktop standards. KWin, KDE's new re-engineered window manager, complies to the new Window Manager Specification. Konqueror and KDE comply to the Desktop Entry Standard. KDE generally complies with the X Drag-and-Drop (XDND) protocol as well as with the X11R6 session management protocol (XSMP).
The K Development Environment
KDE offers developers a rich set of major technologies. Chief among these are the I/O libraries (KIO), the component object model (KParts), an XML-based GUI class, and a standards-compliant HTML rendering engine (KHTML).
KIO Network Technology
KIO implements application I/O in a separate process to enable a non-blocking GUI without the use of threads. The class is network transparent and hence can be used seamlessly to access HTTP, FTP, POP, IMAP, NFS, SMB, LDAP and local files. Moreover, its modular and extensible design permits developers to "drop in" additional protocols, such as WebDAV, which will then automatically be available to all KDE applications. KIO also implements a trader which can locate handlers for specified mimetypes; these handlers can then be embedded within the requesting application using the KParts technology.
KParts, KDE's component object model, allows an application to embed another within itself. The technology handles all aspects of the embedding, such as positioning toolbars and inserting the proper menus when the embedded component is activated or deactivated. KParts can also interface with the KIO trader to locate available handlers for specific mimetypes or services/protocols. This technology is used extensively by the KOffice suite and Konqueror.
XML GUI Builder
The XML GUI employs XML to create and position menus, toolbars and possibly other aspects of the GUI. This technology offers developers and users the advantage of simplified configurability of these user interface elements across applications and automatic compliance with the KDE Standards and Style Guide irrespective of modifications to the standards.
KHTML Rendering Engine