C.5. Open Source Development Tools, Libraries, IDEs

[ fromfile: tools.xml id: tools ]

Following are some open source libraries built on top of Qt, which provide you with additional reusable components.

IDEs

It is not practical to do object-oriented development with an ordinary text editor. Object-oriented development typically involves working with many classes, and many more files (headers + sources). Writing code in an edit window is just a small part of the development process. A good programmer's editor or Integrated Development Environment (IDE) should support many of the following features:

An Open Source IDE

Nokia/Qt Software has released its free, open source, QtCreator, now included with the Qt SDK. It is an IDE written in C++ with in Qt. It has full support for qmake/cmake projects, context-sensitive completion, code navigation, refactoring, and integrated debugging. We think that it is the ideal IDE for developing projects in C++ with Qt on all of the major platforms – for beginners and experts.

Mac OSX users will probably need to install XCode before being able to do any development in C++/Qt.

For all platforms, there is Eclipse, a free Java-based open source IDE. Nokia makes available an Eclipse integration package that provides many features to make Eclipse a proper Qt IDE. You need to install the C/C++ Development Tools (CDT) or the plugins for C++ development, first. The Qt Integration enables you to import qmake .pro files directly into Eclipse as projects and dock Designer's dockables in the Eclipse main window, so that you can use all the features of Designer without leaving Eclipse. In addition, it is possible to integrate the Qt API documentation into Eclipse's context sensitive help system.

UML Modeling Tools

For creating diagrams in this book using the Unified Modeling Language, we use two open source tools: Umbrello and Dia. Each tool uses an XML dialect as its native file format.

Umbrello, shown in Figure C.2, is the KDE UML Modeler - it can directly import C++ code, making it very easy to drag and drop imported classes into diagrams.

Figure C.2. Umbrello Screenshot

Umbrello Screenshot

Dia, a Gnome utility, is a more general purpose diagram tool with some UML features. There are many plugins and utilities that enable you to import code and export diagrams to/from Dia to other languages and formats.