The UWP Files: Asyncing Feeling (Premium)

My struggles with the Universal Windows Platform (UWP) continue. A key contributor: Asynchronous file operations and pop-ups.

It used to be so simple: A Windows application is basically a message pump, so you just wired it up to respond to events. Button clicks. Menu selections. The application closing. That kind of thing.

Yes, how you did that wiring changed as Microsoft’s frameworks evolved and improved. To many, classic Visual Basic was a high point, thanks to its visual Rapid Application Development (RAD) capabilities. But Windows Forms provided the same benefits, and with a more sophisticated language, C#. And Windows Presentation Foundation (WPF) added resolution- and DPI-independence and wonderful XAML language for declaratively creating user interfaces in code. There were always challenges moving forward, and missing functionality from the past, but the advantages of doing so always outweighed the problems.

Until the Universal Windows Platform (UWP), that is. Debuting with Windows 8 in 2012 as Metro, UWP (as we call it now in Windows 10) does provide advantages over past frameworks, though the biggest---cross-device compatibility with Windows 10-based PCs, phones, Xbox consoles, Surface Hubs, HoloLens headsets, and more---never emerged as a viable solution, and any apps that do take advantage of this capability suffer from the common least-common-denominator issue that plagued most cross-platform solutions of the past.

If you want to amuse yourself, visit Microsoft’s What's a Universal Windows Platform (UWP) app? page. It never actually says what a UWP is. Instead, it provides a laundry list of platform advantages, like security, Microsoft Store distribution, and the like.

Here’s what UWP really is: A mobile apps platform, just like iOS and Android. The key difference between UWP and those platforms is the diversity of device types that it supports. Which, again, is not a real-world advantage for most developers. I can’t speak definitively to the sophistication of UWP vs. iOS or Android, but what I can speak to is how well this platform works for those wishing to build a modern application that will run on the Windows 10 desktop. It’s mixed. There’s good and there’s bad.

To its credit, Microsoft did start adding more and more desktop-oriented features to UWP when it became clear that its “One Windows” strategy, as this cross-device thing was called, had failed. I wrote about some of this previously, like its support for the traditional menus that are common in desktop apps, and more compact layouts that facilitate more professional-looking solutions.

But as a superset to WPF, a more modern way to create apps, UWP comes up short in many areas.

One of the biggest issues I’ve faced is UWP’s asynchronous task requirements. It’s meant to be sophisticated, where you can fire off an asynchronous task and the application doesn’t just halt until that task completes. It sounds good on paper. ...

Gain unlimited access to Premium articles.

With technology shaping our everyday lives, how could we not dig deeper?

Thurrott Premium delivers an honest and thorough perspective about the technologies we use and rely on everyday. Discover deeper content as a Premium member.

Tagged with

Share post

Please check our Community Guidelines before commenting

Windows Intelligence In Your Inbox

Sign up for our new free newsletter to get three time-saving tips each Friday

"*" indicates required fields

This field is for validation purposes and should be left unchanged.

Thurrott © 2024 Thurrott LLC