magician's hands

Integrated Development Environments Deliver Productivity Gains

Jeff Tranter

Jeff Tranter


Jeff Tranter is a Qt Consulting Manager at ICS. Jeff oversees the architectural and high-level design of software systems for clients. Jeff’s leadership organizes global teams of developers on desktop and embedded applications.

By Jeff Tranter | Wednesday, January 31, 2018

While you can develop software using just a text editor and the command line (and many people do), you'll often see productivity gains by using a graphical integrated development environment (IDE). Here are a few options for IDEs that are suitable for Qt development.

Qt Creator

The "official" Qt IDE, Qt Creator (1) is open source, cross-platform, and written using Qt. It is usually the IDE of choice for Qt development unless you have some special requirements or a personal preference. Its support for mobile and embedded platforms really pays off in making it easy to build, deploy, and debug. The embedded Qt Designer allows you to lay out widgets and QML Designer lets you lay out QML objects in a WYSIWYG mode. There aren't many reasons not to use it as your IDE.

Visual Studio Qt Add-in

Visual Studio (2) is the standard Microsoft IDE, and if you develop exclusively for that platform you may wish to use it for your Qt development. I know some developers who really like the code editor and debugger features. It is also available in free versions.

Qt development can be done from Visual Studio using the Visual Studio Qt Add-in (3). It provides Wizards for creating new Qt projects and classes, build integration with the Meta-Object Compiler (moc), User Interface Compiler (uic), and Resource Compiler (rcc), import and export of Qt project files, automated conversion between Visual Studio and qmake projects, integrated resource management, integrated Qt documentation, and debugging extensions for Qt data types.

Xcode

Qt development on macOS can be done using the Xcode IDE (4). Even if you don't use it as your IDE, Qt for the Mac platform (5) requires installing Xcode in order to obtain the compiler, debugger, and other development tools needed for macOS and iOS development.

Android Studio and SDK

Much like on macOS, Qt development on the Android platform requires installing the Android SDK, NDK, and related tools. You can develop with Qt Creator (6), or you may wish to use the Android Studio IDE (7).

PyCharm

Qt has bindings for the Python language, an increasingly popular choice for a programming language. Qt Creator has only minimal support for Python.

PyCharm (8) is a popular IDE with good support for the Python language. It provides support for code analysis, a graphical debugger, support for unit testing, and integration with version control systems. It is cross-platform with Windows, macOS and Linux versions and available as a free Community Edition or a commercial Professional Edition that has more features.

KDevelop

KDevelop (9) is a cross-platform IDE for C, C++, Python, QML/JavaScript and PHP programming. Part of the Open Source KDE project, it uses Qt and runs on Windows, macOS, and Linux.

Eclipse

Eclipse (10) is an IDE, most often used with Java, but supporting other languages including C++. Back in the Qt 4 days there was a plugin for the Eclipse IDE to support Qt development. This has not been maintained for some time and no longer appears to be a viable option (unless you use Qt 4 and an old version of Eclipse).

Summary

While Qt Creator is the most common choice among Qt developers for an IDE, you might want to explore some of the other options I've described here, especially if you use a programming language other than C++, like Python.

For more Qt development tools, check out the rest of the series here.

References

1. http://doc.qt.io/qtcreator/
2. https://www.visualstudio.com/
3. http://doc.qt.io/qtvstools/index.html
4. https://developer.apple.com/xcode/
5. http://doc.qt.io/qt-5/osx.html
6. http://doc.qt.io/qt-5/androidgs.html
7. https://developer.android.com/studio/index.html
8. https://www.jetbrains.com/pycharm
9. https://www.kdevelop.org/
10. https://www.eclipse.org/



Have a question or add to the conversation: Log in Register