KDevelop 0.1 was released in 1998, with 1.0 following in late 1999. 1.x and 2.x were developed over a period of four years from the original codebase. It is believed that Sandy Meier originated KDevelop. Ralf Nolden is also known to be an early developer of the project. In 1998 Sandy Meier started KDevelop and worked 8 weeks alone on this project. Since then, the KDevelop IDE is publicly available under the GPL and supports many programming languages. Bernd Gehrmann started a complete rewrite and announced KDevelop 3.x in March 2001. Its first release was together with K Desktop Environment 3.2 in February 2004, and development of KDevelop 3.x continued until 2008. KDevelop 4.x, another complete rewrite with a more object-oriented programming model, was developed from August 2005 and released as KDevelop 4.0.0 in May 2010. The last feature update of this branch was version 4.7.0 in September 2014, with bugfix releases continuing until KDevelop 4.7.4 in December 2016 KDevelop 5 development began in August 2014 as a continuation of the 4.x codebase, ported to Qt5 and KDE Frameworks 5. The custom C++ parser used in earlier versions, which had poor support for C++11 syntax, was replaced by a new Clang-based backend. The integrated CMakeFile interpreter was also removed in favour of JSONmetadata produced by the upstream CMake tool. Semantic language support was added for QML and JavaScript, using the parser from Qt Creator, alongside a new QMake project-manager backend. The first stable 5.x release was KDevelop 5.0.0 in August 2016. In October 2016, official Microsoft Windows builds were released for the first time.
Features
KDevelop uses an embedded text editor component through the KPartsframework. The default editor is KDE Advanced Text Editor, which can optionally be replaced with a Qt Designer-based editor. This list focuses on the features of KDevelop itself. For features specific to the editor component, see the article on Kate.
KDevelop 4 is a completely plugin-based architecture. When a developer makes a change, they only must compile the plugin. There is a possibility to keep several profiles each of which determines which plugins to be loaded. KDevelop does not come with a text editor, but instead uses a plugin for this purpose as well. KDevelop is programming language independent and build system-independent, supporting KDE, GNOME, and many other technologies such as Qt, GTK+, and wxWidgets. KDevelop has supported a variety of programming languages, including C, C++, Python, PHP, Java, Fortran, Ruby, Ada, Pascal, SQL, and Bash scripting. Supported build systems include GNU, cmake, qmake, and make for custom projects and scripting projects which don't need one. Code completion is available for C and C++. Symbols are kept in a Berkeley DB file for quick lookups without re-parsing. KDevelop also offers a developer framework which helps to write new parsers for other programming languages. An integrated debugger allows graphically doing all debugging with breakpoints and backtraces. It even works with dynamically loaded plugins unlike command lineGDB. Quick Open allows quick navigation between files. Currently, around 50 to 100 plugins exist for this IDE. Major ones include persistent project-wide code bookmarks, Code abbreviations which allow expanding text quickly, a Source formatter which reformats code to a style guide before saving, Regular expressions search, and project-wide search/replace which helps in refactoring code.