Qt Desktop Days – Day 3
The great content from Qt Desktop Days continued on day three.
If you’re building a desktop application today, should you consider building the UI with Qt Quick? That’s the question that KDABian Shantanu Tushar answers in this session. He walks us through the pros and cons of Qt Widgets versus Qt Quick, and explains that although there are still plenty of good reasons to use widgets, there are a lot of advantages that you’re missing if you dismiss a QML-based desktop app out-of-hand.
But desktop apps aren’t the same as mobile ones, and having implemented many desktop applications in QML, Shantanu knows what works and what doesn’t. In our first Qt Desktop Days video for today, he explains how desktop apps are often more complex than mobile, and how he manages to tame QML complexity with imports, assets, and namespaces. He also covers issues that desktop developers need to handle such as screen layout trade-offs and styling to match native controls. Shantanu also gives us real-life examples of why and how to mix designer screens and implementation screens in the same application. If you’re thinking about going down the QML route with your app, you should really watch this talk before you begin.
Everybody knows automated testing lets you test easily and often, finding problems quickly before they’ve been allowed to fester in your codebase. But even in 2020, lots of people think GUI testing is too much of a hassle. You won’t think that after you see Frerich Raabe’s (from Froglogic) talk about Squish. He shows us how easy and incredibly powerful it is to automate GUI testing.
With a live demo, Frerich shows us just what it means to have functional behavior-driven testing, and why that’s so crucial to UI testing. Watching the Squish IDE record his actions in the app under test and then churn out readable Python scripts is cool. But seeing how easy it is for him to simplify and templatize those tests into a more thorough suite is amazing. Because it’s a live demo, nothing ever works perfectly – and Frerich uses a test failure to show us how you can debug the tests and make them more resilient. If you aren’t already a GUI-testing believer, you will be after this session!
Developers that need to support multiple platforms (like say, Windows and Linux) know too well the pain of managing dual boots or multiple VM sessions. If anyone out there feels your pain, it’s Avri Parker and Craig Loewen from Microsoft. Thankfully, they are here to help us catch up on the current state of Windows Subsystem for Linux, better known as WSL. In particular, they show how WSL helps develop desktop apps with both OSes in a completely painless way.
If you are thinking slow emulation or memory-hogging VMs, you’ll be very happy to see Avri and Craig with a couple of demos showing how fast and seamless everything is in the WSL environment. They demonstrate how to run tools across multiple distros, how to run XWindows apps (including Qt Creator and Chrome) from the MS command line, and how to launch a Windows app like VS Code from Linux. They cap it off with a show of upcoming support for CUDA GPU computing for machine learning applications.
If you live on the Linux command line but need MS Office tools for email and documents, you’ll definitely want to check this out.