You are currently viewing Qt Framework – A path in cross-platform application

Qt Framework – A path in cross-platform application

The world of Qt was introduced to me when I started using GNU Linux OS. I had given up on Windows as it was not able to run it on my old laptop and GNU Linux was the path to pursue. There I found my love of customization. I learned that there are different Desktop Environments in Linux. They were called Distros and you can hopp distros. After a lot of Distro hopping, I was stuck at KDE (KDE is an international free software community developing Free and Open Source software). The sheer number of customization options in KDE was overwhelming at the beginning. But, it grew on me slowly. There I learned about the framework called Qt. Qt framework was the main development framework of KDE. Thus, I started my exploration of this framework.

Where is it used?

This framework is used in numerous places. Telegram, VLC, GNU Octave, Malwarebytes, Spotify, TeamViewer, VirtualBox, WPS Office. These are some of the software made by the Qt framework. Well, it is used in the automotive development industry and they use Qt for the development of the dash UI. It is used by companies like Benz.

About Qt/Qml

Qt is a cross-platform software development framework used to create native embedded, desktop and mobile applications. It is written in C++ which implements a wide range of different features you might need in your platform. These are developed for each platform by using native technology available on that platform.
They were using the idea of widget for making GUI. But now they are using HTML like declarative language called QML. It is a declarative language specifically designed for creating graphical user interfaces. It has a JavaScript engine build-in. Thus, you will be able to make use of the existing JavaScript libraries.

Figure 1:Rimac Automobili electric supercar infotainment system is written using Qt/QM

The recent move towards HTML like markup language has propelled the use of Qt. I had used Qt to develop GPS tracking of smart phones, HRM applications, applications for companies like Siemens, Wipro etc.

How can you start?

Qt comes with an Integrated Development Environment (IDE), named Qt Creator. It runs on Linux, OS X, and Windows and offers intelligent code completion, syntax highlighting, an integrated help system, debugger and profiler integration and integration for all major version control systems. In addition to Qt Creator developers on Windows can also use Qt’s Visual Studio Add-in. Other IDEs can also be used. But of course, it is in no way mandatory to use any IDE at all.
The example given in the documentation will help you start with the framework.

From native apps to Web apps

As an electronic hobbyist as myself. Qt gives me the freedom to work on microcontrollers with “Qt for MCU” . I can use JavaScript and C++ to work on STM boards.
Qt also supports web Assembly, in which you will be able to compile your application into a web app. Thus using the same IDE to build native applications and web applications which can run in browser. The Web Assembly is still in preview phase and it is only available in Linux. But it is also set to release on all major platform in couple of months
There are also alternative approaches like translating QML to HTML with projects like PureQML and QMLWeb. If you don’t want to wait for the web assembly to be out.
With the rise in new OS’s like fuchsia, Chrome OS and others, the need for a cross platform developer is in a high rise. The world is for the people who are ready to venture into the unknown. The unknown world of open source if you have not been there. If you are an open source developer already, then keep at it and make the world a better place.

About the author

Er. Dinu John did his B-Tech (ECE) graduation from Sahrydaya College of Engineering and Technology, Kerala. He is currently working as Senior software developer at Wiztales Media Pvt ltd. He was the chair of IEEE Sahrdaya SB Chairperson 2016-17.