ISV/Why use KDE: Difference between revisions

    From KDE TechBase
    m (→‎Sub-Projects: some link and name changes)
    (14 intermediate revisions by 9 users not shown)
    Line 5: Line 5:


    == KDE e.V. ==
    == KDE e.V. ==
    The non-profit organization [http://ev.kde.org KDE e.V.] helps in creating and distributing KDE by securing cash, hardware, and other donations, then using donations to aid KDE development and promotion. All its members are part of the KDE community which means the KDE e.V. plays an important role in the KDE project. Members of the KDE e.V. form several '''working groups''' like the [http://www.spreadkde.org/handbook/mwg/charter Marketing Working Group (MWG)] and the Human-Computer Interaction (HCI) Working Group to help realize KDE's vision.
    The non-profit organization [http://ev.kde.org KDE e.V.] helps in creating and distributing KDE by securing cash, hardware, and other donations, then using donations to aid KDE development and promotion. All its members are part of the KDE community which means the KDE e.V. plays an important role in the KDE project. Members of the KDE e.V. form several '''working groups''' like the [http://spread.kde.org/handbook/mwg/charter Marketing Working Group (MWG)] and the [http://ev.kde.org/workinggroups/hci.php Human-Computer Interaction (HCI) Working Group] to help realize KDE's vision.


    == Adoption of KDE ==
    == Adoption of KDE ==
    Line 11: Line 11:


    == Development ==
    == Development ==
    The KDE development process takes place in steady release cycles. '''[http://developer.kde.org/development-versions/release.html Release schedules]''' and '''feature plans''' help the KDE project coordinating a KDE release by introducing several ''phases'' like ''feature freeze'' and ''message freeze''. This phases make sure that developers concentrate on polishing the release and the translation teams have time enough to translate all the KDE software into many different languages. Further information about KDE development tools can be found on the [[Development|development pages]].
    The KDE development process takes place in steady release cycles. '''[[Schedules|Release schedules and feature plans]]''' help the KDE project coordinating a KDE release by introducing several ''phases'' like ''feature freeze'' and ''message freeze''. This phases make sure that developers concentrate on polishing the release and the translation teams have time enough to translate all the KDE software into many different languages. Further information about KDE development tools can be found on the [[Development|development pages]].


    === Documentation ===
    === Documentation ===
    Line 17: Line 17:


    === Technologies ===
    === Technologies ===
    KDE provides a wide range of '''powerful technologies''' such as [http://khtml.info KHTML and KJS] which are adopted by other companies like Apple (Safari browsers) and Nokia. Additionally there are several '''development frameworks''' like KParts (KDE's component technology), KIO (network/protocol architecture) or KXmlGui (build GUIs based on XML definitions).
    KDE provides a wide range of '''powerful technologies''' such as [http://www.webkit.org/ WebKit and KJS] which are adopted by other companies like Apple (Safari browsers) and Nokia. Additionally there are several '''development frameworks''' like KParts (KDE's component technology), KIO (network/protocol architecture) or KXmlGui (build GUIs based on XML definitions).


    KDE uses '''well-known standards''' like DCOP in KDE 3 or [http://hal.freedesktop.org HAL (Hardware Abstraction Layer)] and [http://dbus.freedesktop.org D-Bus] (interprocess communication) in upcoming KDE 4.
    KDE uses '''well-known standards''' like [http://en.wikipedia.org/wiki/Udev UDev]) and [http://dbus.freedesktop.org D-Bus] (interprocess communication).


    === Compatibility & Integration ===
    === Compatibility & Integration ===
    The last major KDE release was KDE 3. All KDE 3.x versions are '''binary compatible''', i.e. software written five years ago is compatible to the latest stable release KDE 3.5. As KDE is based on standards it is for instance easy to integrate applications with plain [http://todo-link-to-howto .desktop files].
    The last major KDE release was KDE 4.0. All KDE 4.x versions are '''binary compatible''', i.e. software written for KDE 4.0 will be compatible with KDE 4.11 years later. As KDE is based on standards it is, for instance, easy to integrate applications with plain [[Development/Tutorials/Desktop_File|.desktop files]].


    ==== Freedesktop.org & Portland ====
    ==== Freedesktop.org & Portland ====
    As an ISV, your target is probably not only KDE but all Linux/UNIX desktops. This is made possible due to '''strong collaboration between KDE and other projects''' like [http://freedesktop.org freedesktop.org] which defines standards and software that helps integrating applications in all standard conform desktop environments.
    As an ISV, your target is probably not only KDE but all Linux/UNIX desktops. This is made possible due to '''strong collaboration between KDE and other projects''' like [http://freedesktop.org freedesktop.org] which defines standards and software that helps integrating applications in all standard conform desktop environments.


    One of those projects is the [http://developer.kde.org/portland/ Portland project], which intends to develop a common set of Linux Desktop Programming Interfaces and Tools to allow applications to '''easily integrate''' with the free desktop configuration an end user has chosen to work with.
    One of those projects is the [http://en.wikipedia.org/wiki/Portland_Project Portland project], which intends to develop a common set of Linux Desktop Programming Interfaces and Tools to allow applications to '''easily integrate''' with the free desktop configuration an end user has chosen to work with.


    === Sub-Projects ===
    === Sub-Projects ===
    KDE has a lot of sub-projects with different aims. Here are some examples:
    KDE has many sub-projects to more specifically coordinate unique project goals of major supporting applications. Several of these significant projects are noted below:
     
    ; KDE Pim
    ; KDE Pim
    : The goal of [http://pim.kde.org KDE Pim] (Personal information management) is to provide an application suite to manage personal information. This includes applications like an email client, a calender etc. The main result is '''KDE Kontact''', our personal information manager.
    : The goal of [http://community.kde.org/KDE_PIM KDE Pim] (Personal information management) is to provide an application suite to manage personal information. This includes applications like an email client, a calender etc. The main result is '''KDE Kontact''', our personal information manager.


    ; KOffice
    ; Calligra
    : [http://koffice.kde.org KOffice] is an '''integrated office suite''' using KDE-technology and features a full set of applications which work together seamlessly to provide the best user experience possible. The office suite contains applications like KWord, KSpread, KPresenter, Krita and many more.
    : [http://calligra.org Calligra] is an '''integrated office suite''' using KDE-technology and features a full set of applications which work together seamlessly to provide the best user experience possible. The office suite contains applications like Words, Tables, Stage, Krita, Kexi and many more.


    ; KDevelop
    ; KDevelop
    : [http://kdevelop.kde.org KDevelop] is an '''Integrated Development Environment''' (IDE) for KDE. It supports language like C/C++ and Java and helps with rapid application development.
    : [http://kdevelop.org/ KDevelop] is an '''Integrated Development Environment''' (IDE) for KDE. It supports language like C/C++ and Java and helps with rapid application development.
     
    === Licensing ===
    An often arising question is: ''Can I use KDE to develop commercial applications?'' - '''Yes, you can develop commercial applications for KDE'''. KDE's foundation libraries {{path|kdelibs}} and {{path|kdepimlibs}} but also KOffice libraries and several of its major apps are licensed under the LGPL, which means you can link closed source applications against those libraries. A valid Qt developer license is required for closed source development, however.


    == Roadmap ==
    == Roadmap ==

    Revision as of 13:40, 13 May 2013

    This page intends to help Independent Software Vendors (ISVs) getting into KDE related topics. This includes companies developing commercial applications as well as other Open Source Projects.

    The KDE Community

    The KDE project attracts many people with different backgrounds. As such, the day-by-day growing KDE community includes many developers, translators, artists as well as usability and accessibility experts and - of course - lots of users. For several years now all those people are welcome to meet at the annual KDE Conference aKademy to discuss KDE related topics and shape the roadmap for future development.

    KDE e.V.

    The non-profit organization KDE e.V. helps in creating and distributing KDE by securing cash, hardware, and other donations, then using donations to aid KDE development and promotion. All its members are part of the KDE community which means the KDE e.V. plays an important role in the KDE project. Members of the KDE e.V. form several working groups like the Marketing Working Group (MWG) and the Human-Computer Interaction (HCI) Working Group to help realize KDE's vision.

    Adoption of KDE

    KDE is one of the biggest Open Source projects making the Linux/UNIX desktop's experience much more user friendly. As such, distributions strongly support KDE by actively taking part in its development process and ship KDE as their default desktop environment. Many companies use KDE for production use.

    Development

    The KDE development process takes place in steady release cycles. Release schedules and feature plans help the KDE project coordinating a KDE release by introducing several phases like feature freeze and message freeze. This phases make sure that developers concentrate on polishing the release and the translation teams have time enough to translate all the KDE software into many different languages. Further information about KDE development tools can be found on the development pages.

    Documentation

    The KDE project provides excellent documentation about its API and its technologies, such as KParts or KXmlGui. There are many Tutorials and HOWTOs which help getting into KDE development. An overview can be found at the development pages.

    Technologies

    KDE provides a wide range of powerful technologies such as WebKit and KJS which are adopted by other companies like Apple (Safari browsers) and Nokia. Additionally there are several development frameworks like KParts (KDE's component technology), KIO (network/protocol architecture) or KXmlGui (build GUIs based on XML definitions).

    KDE uses well-known standards like UDev) and D-Bus (interprocess communication).

    Compatibility & Integration

    The last major KDE release was KDE 4.0. All KDE 4.x versions are binary compatible, i.e. software written for KDE 4.0 will be compatible with KDE 4.11 years later. As KDE is based on standards it is, for instance, easy to integrate applications with plain .desktop files.

    Freedesktop.org & Portland

    As an ISV, your target is probably not only KDE but all Linux/UNIX desktops. This is made possible due to strong collaboration between KDE and other projects like freedesktop.org which defines standards and software that helps integrating applications in all standard conform desktop environments.

    One of those projects is the Portland project, which intends to develop a common set of Linux Desktop Programming Interfaces and Tools to allow applications to easily integrate with the free desktop configuration an end user has chosen to work with.

    Sub-Projects

    KDE has many sub-projects to more specifically coordinate unique project goals of major supporting applications. Several of these significant projects are noted below:

    KDE Pim
    The goal of KDE Pim (Personal information management) is to provide an application suite to manage personal information. This includes applications like an email client, a calender etc. The main result is KDE Kontact, our personal information manager.
    Calligra
    Calligra is an integrated office suite using KDE-technology and features a full set of applications which work together seamlessly to provide the best user experience possible. The office suite contains applications like Words, Tables, Stage, Krita, Kexi and many more.
    KDevelop
    KDevelop is an Integrated Development Environment (IDE) for KDE. It supports language like C/C++ and Java and helps with rapid application development.

    Roadmap

    KDE development follows a release schedule in order to coordinate releases. These usually cover for minor releases the last 10 weeks and for major releases the last 20 weeks before the official release. The features planned for a release are usually published at the same time as the schedule.

    Further details can be found in the roadmap page.