Case Study: Porting Qt to Windows Runtime
Knight, Andrew (2014)
Knight, Andrew
2014
Vuorovaikutteinen teknologia - Interactive Technology
Informaatiotieteiden yksikkö - School of Information Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2014-07-31
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:uta-201408212062
https://urn.fi/URN:NBN:fi:uta-201408212062
Tiivistelmä
With the abundance of operating system choices available to end-users, particularly for mobile devices, application developers look for ways to cut development time while increasing the portability and maintainability of their source code. One solution to this challenge can be found through use of cross-platform frameworks. Cross-platform frameworks function by abstracting the system-specific details of incompatible platforms into a common programming interface which developers can use to target many different devices and operating systems.
This thesis studies the abstraction architecture of Qt, a leading cross-platform C++ graphical user interface framework, with the goal of bringing a new platform, Windows Runtime, to the framework's set of supported targets. Windows Runtime is a collective programming interface for the Microsoft Windows 8 family of operating systems, including Windows 8, Windows Phone 8, and Windows RT. While Qt already supports a range of desktop and mobile operating systems -- including Windows, Mac OSX, Linux/X11, Android, iOS, BlackBerry, and Sailfish -- support for Windows Runtime is a new feature of the framework brought forth by this case study.
Current trends in cross-platform frameworks, particularly declarative user interface frameworks with a mobile emphasis, are assessed and compared to Qt's offering, and the implementation of Qt for Windows Runtime is prepared with these trends in mind. The implementation contributes to the open-source Qt Project, with the contributions included in the official Qt 5.3 release. Using the released version of Qt 5.3, a canonical Qt application is ported to the new platform and is certified and published in the Windows Store. Through this porting and publication process, an evaluation of the project's success is constructed within a cross-platform context.
The outlook for Windows Runtime as a growing platform is positive, as is the outlook for the uptake of Qt (and cross-platform frameworks in general) within modern device ecosystems. Moving forward, the quality and feature parity of Qt for Windows Runtime (as compared to competing frameworks) is expected to improve as users and open-source contributors make this new offering part of their respective development workflows and software projects.
This thesis studies the abstraction architecture of Qt, a leading cross-platform C++ graphical user interface framework, with the goal of bringing a new platform, Windows Runtime, to the framework's set of supported targets. Windows Runtime is a collective programming interface for the Microsoft Windows 8 family of operating systems, including Windows 8, Windows Phone 8, and Windows RT. While Qt already supports a range of desktop and mobile operating systems -- including Windows, Mac OSX, Linux/X11, Android, iOS, BlackBerry, and Sailfish -- support for Windows Runtime is a new feature of the framework brought forth by this case study.
Current trends in cross-platform frameworks, particularly declarative user interface frameworks with a mobile emphasis, are assessed and compared to Qt's offering, and the implementation of Qt for Windows Runtime is prepared with these trends in mind. The implementation contributes to the open-source Qt Project, with the contributions included in the official Qt 5.3 release. Using the released version of Qt 5.3, a canonical Qt application is ported to the new platform and is certified and published in the Windows Store. Through this porting and publication process, an evaluation of the project's success is constructed within a cross-platform context.
The outlook for Windows Runtime as a growing platform is positive, as is the outlook for the uptake of Qt (and cross-platform frameworks in general) within modern device ecosystems. Moving forward, the quality and feature parity of Qt for Windows Runtime (as compared to competing frameworks) is expected to improve as users and open-source contributors make this new offering part of their respective development workflows and software projects.