Microsoft wants developers to write universal apps, not apps that are limited to use only on a single form factor. The company debuted the idea of universal apps — those that will run on laptops, desktops, tablets and smartphones — earlier this year. Universal apps have a better chance at winning over consumers, and they transition from device to device throughout the day.
In order to drum up developer support, Microsoft updated many of its developer tools. Now that those tools have been in the market for a few months, Microsoft is angling hard to convince developers to put them to use. Microsoft published a series of articles this week to highlight just how easy it is to write universal apps.
"Think what happens when you rent a car. You sit in the driving seat looking at a bunch of controls. Some of them, steering wheel, pedals etc., are exactly where you would expect them to be. Others, the lights, the radio and the wipers, are not quite where you remember them. Moving to a universal app is just like this," wrote Microsoft MVP Rob Miles. "Pretty much all of the important stuff is where you would expect it to be. C#, MainPage.xaml, Visual Studio, etc., all are present and correct. But there are some bits that are different and, in pretty much every case I’ve found, better."
Miles goes on to espouse just how simple it is to code a universal app. He notes that the windows are bigger, the tools are easy, some UI code can be reused and the basic page puts your Windows Phone pages back to how they used to be. Miles' complaints are limited. He says the cursor is different and the message box has been changed; creating tasks is also different but doesn't need to be done as often; and displaying message threads from the background is not quite the same.
In the end, Miles says, "I strongly believe that the future lies with universal apps. If you are starting off writing a brand-new application, you really should start off with a universal application. It greatly expands the number of potential customers you will have."
Microsoft MVPs Pavel Yosifovich (CTO at CodeValue) and Can Bilgin (senior solutions architect at CompuSight Corp.) also contributed posts talking up the benefits of universal apps.
Bilgin offers a walk-through of using the developer tools and what it was like to combine CompuSight's Adobe EchoSign e-signature app for the Windows Store and Windows Phone 8 into a universal app. His detailed blog post offers a great look at just what goes into crafting apps that work on multiple form factors. "With the release of Windows Phone 8.1 and Windows 8.1, developers now have a single runtime that they can use to create universal Windows apps," wrote Belgin. "This not only provides a little relief for management of the media assets used in apps for the two separate platforms, but also increases the reusability of feature sets, source code and ultimately know-how."
Yosifovich was not quite as bullish on the altered process, but came away impressed nonetheless and agrees with Miles and Bilgin that universal apps are the way to go. "Clearly, there’s still a way to go, but I believe this is a good direction. What is apparent to me is that WinRT is the present and future, but the Silverlight API is just here for compatibility and maintenance. So, if you’ve been avoiding or neglecting WinRT — don’t. New apps (even if they are not planned to be multi-platform) should be based on the WinRT API and not the Silverlight one."
The bottom line here is that while universal apps take a little more work to create, the results will be worth the added effort.